Package org.mariuszgromada.math.mxparser
Class Expression
- java.lang.Object
-
- org.mariuszgromada.math.mxparser.PrimitiveElement
-
- org.mariuszgromada.math.mxparser.Expression
-
- All Implemented Interfaces:
Serializable
public class Expression extends PrimitiveElement implements Serializable
Expression - base class for real expressions definition. Examples:- '1+2'
- 'sin(x)+1'
- 'asin(3*x)^10-log(4,8)'
- in general 'f(x1,x2,...,xn)' where x1,...,xn are real arguments
Class provides easy way to define multivariate arithmetic expression.
- Version:
- 5.2.1
- Author:
- Mariusz Gromada
MathParser.org - mXparser project page
mXparser on GitHub
INFIMA place to purchase a commercial MathParser.org-mXparser software license
info@mathparser.org
ScalarMath.org - a powerful math engine and math scripting language
Scalar Lite
Scalar Pro
MathSpace.pl - See Also:
Argument
,RecursiveArgument
,Constant
,Function
, Serialized Form
Buy me a cup of coffee via donation
or support me purchasing the license via ORDER Page , or INFIMA online store
-
-
Field Summary
Fields Modifier and Type Field Description static long
msStart
static long
msSum
static boolean
NO_SYNTAX_ERRORS
Status of the syntax - no syntax errorstatic boolean
SYNTAX_ERROR
Status of the syntax - syntax error or syntax status unknownstatic boolean
SYNTAX_ERROR_OR_STATUS_UNKNOWN
Deprecated.Planned to be removed, useSYNTAX_ERROR
insteadstatic String
TYPE_DESC
static int
TYPE_ID
Expression type id
-
Constructor Summary
Constructors Constructor Description Expression(String expressionString, PrimitiveElement... elements)
Constructor - creates new expression from expression string.Expression(PrimitiveElement... elements)
Default constructor - empty expression
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addArguments(Argument... arguments)
Adds arguments (variadic) to the expression definition.void
addConstants(List<Constant> constantsList)
Adds constants to the expression definition.void
addConstants(Constant... constants)
Adds constants (variadic parameters) to the expression definition.void
addDefinitions(PrimitiveElement... elements)
Adds user defined elements (such as: Arguments, Constants, Functions) to the expressions.void
addFunctions(Function... functions)
Adds functions (variadic parameters) to the expression definition.double
calculate()
Calculates the expression value and registers all the calculation stepsdouble
calculate(CalcStepsRegister calcStepsRegister)
Calculates the expression valueboolean
checkIfAttemptToFixExpStrMode()
Gets attempt to fix expression string modeboolean
checkIfImpliedMultiplicationMode()
Gets implied multiplication statusboolean
checkIfUnicodeBuiltinKeyWordsMode()
Gets unicode built-in parser keywords modeboolean
checkLexSyntax()
Checks syntax of the expression string.boolean
checkSyntax()
Checks syntax of the expression string.void
clearDescription()
Clears expression descriptionvoid
clearExpressionString()
Clears expression stringprotected Expression
clone()
Expression cloning.Expression
cloneForThreadSafe()
Creates a completely independent 1-1 clone that can be safely used by a separate thread.void
consolePrintCopyOfInitialTokens()
Prints to the console copy of initial tokens.void
defineArgument(String argumentName, double argumentValue)
Enables to define the argument (associated with the expression) based on the argument name and the argument value.void
defineArguments(String... argumentsNames)
Enables to define the arguments (associated with the expression) based on the given arguments names.void
defineConstant(String constantName, double constantValue)
Enables to define the constant (associated with the expression) based on the constant name and constant value.void
defineFunction(String functionName, String functionExpressionString, String... argumentsNames)
Enables to define the function (associated with the expression) based on the function name, function expression string and arguments names (variadic parameters).void
disableAttemptToFixExpStrMode()
Disables attempt to fix the expression String.void
disableImpliedMultiplicationMode()
Disables implied multiplicationvoid
disableUnicodeBuiltinKeyWordsMode()
Disables unicode built-in parser keywords, this flag informs the parser that built-in unicode keywords are not supported and will not be recognized as functions or operators.void
enableAttemptToFixExpStrMode()
Enables attempt to fix the expression String.void
enableImpliedMultiplicationMode()
Sets implied multiplicationvoid
enableUnicodeBuiltinKeyWordsMode()
Enables unicode built-in parser keywords, this flag informs the parser that built-in unicode keywords are supported and will be recognized as functions or operators.Argument
getArgument(int argumentIndex)
Gets argument from the expression.Argument
getArgument(String argumentName)
Gets argument from the expression.int
getArgumentIndex(String argumentName)
Gets argument index from the expression.int
getArgumentsNumber()
Gets number of arguments associated with the expression.double
getArgumentValue(String argumentName)
Gets argument vale.String
getCanonicalExpressionString()
Returns expression stringdouble
getComputingTime()
Gets computing time.Constant
getConstant(int constantIndex)
Gets constant associated with the expression.Constant
getConstant(String constantName)
Gets constant associated with the expression.int
getConstantIndex(String constantName)
Gets constant index associated with the expression.int
getConstantsNumber()
Gets number of constants associated with the expression.List<Token>
getCopyOfInitialTokens()
Tokenizes expression string and returns tokens list, including: string, type, level.String
getDescription()
Gets expression description.String
getErrorMessage()
Method return error message after calling checkSyntax() method or calculate().String
getExpressionString()
Returns expression stringFunction
getFunction(int functionIndex)
Gets function associated with the expression.Function
getFunction(String functionName)
Gets function associated with the expression.int
getFunctionIndex(String functionName)
Gets index of function associated with the expression.int
getFunctionsNumber()
Gets number of functions associated with the expression.String
getHelp()
Returns detailed user help on the syntax of mathematical expressions.String
getHelp(boolean addHeader, boolean addCaption, String caption)
Returns detailed user help on the syntax of mathematical expressions.String
getHelp(String query)
Returns detailed user help on the syntax of mathematical expressions.String
getHelp(String query, boolean addHeader, boolean addCaption, String caption)
Returns detailed user help on the syntax of mathematical expressions.String
getHelpAsCsv()
Returns (as CSV) detailed user help on the syntax of mathematical expressions.String
getHelpAsCsv(String query)
Returns (as CSV) detailed user help on the syntax of mathematical expressions.String
getHelpAsCsv(String quote, String delimiter, boolean addHeader)
Returns (as CSV) detailed user help on the syntax of mathematical expressions.String
getHelpAsCsv(String query, String quote, String delimiter, boolean addHeader)
Returns (as CSV) detailed user help on the syntax of mathematical expressions.String
getHelpAsHtmlTable()
Returns (as HTML table) detailed user help on the syntax of mathematical expressions.String
getHelpAsHtmlTable(boolean addHeader, boolean addCaption, boolean addFigure, String caption, String cssClass)
Returns (as HTML table) detailed user help on the syntax of mathematical expressions.String
getHelpAsHtmlTable(String query)
Returns (as HTML table) detailed user help on the syntax of mathematical expressions.String
getHelpAsHtmlTable(String query, boolean addHeader, boolean addCaption, boolean addFigure, String caption, String cssClass)
Returns (as HTML table) detailed user help on the syntax of mathematical expressions.String
getHelpAsJson()
Returns (as Json) detailed user help on the syntax of mathematical expressions.String
getHelpAsJson(boolean addCaption, String caption)
Returns (as Json) detailed user help on the syntax of mathematical expressions.String
getHelpAsJson(String query)
Returns (as Json) detailed user help on the syntax of mathematical expressions.String
getHelpAsJson(String query, boolean addCaption, String caption)
Returns (as Json) detailed user help on the syntax of mathematical expressions.String
getHelpAsMarkdownTable()
Returns (as Markdown table) detailed user help on the syntax of mathematical expressions.String
getHelpAsMarkdownTable(boolean addHeader, boolean addCaption, String caption)
Returns (as Markdown table) detailed user help on the syntax of mathematical expressions.String
getHelpAsMarkdownTable(String query)
Returns (as Markdown table) detailed user help on the syntax of mathematical expressions.String
getHelpAsMarkdownTable(String query, boolean addHeader, boolean addCaption, String caption)
Returns (as Markdown table) detailed user help on the syntax of mathematical expressions.List<KeyWord>
getKeyWords()
Returns list of keywords known to the parserList<KeyWord>
getKeyWords(String query)
Returns list of keywords known to the parser.String[]
getMissingUserDefinedArguments()
Returns missing user defined arguments names, i.e.String[]
getMissingUserDefinedFunctions()
Returns missing user defined functions names, i.e.String[]
getMissingUserDefinedUnits()
Returns missing user defined units names, i.e. 2*[w] + [q] where [w] and [q] are not defined function will return [w] and [q].boolean
getRecursiveMode()
Gets recursive mode statusboolean
getSyntaxStatus()
Gets syntax status of the expression.boolean
getVerboseMode()
Returns verbose mode status.void
removeAllArguments()
Removes all arguments associated with the expression.void
removeAllConstants()
Removes all constants associated with the expressionvoid
removeAllFunctions()
Removes all functions associated with the expression.void
removeArguments(String... argumentsNames)
Removes first occurrences of the arguments associated with the expression.void
removeArguments(Argument... arguments)
Removes first occurrences of the arguments associated with the expression.void
removeConstants(String... constantsNames)
Removes first occurrences of the constants associated with the expression.void
removeConstants(Constant... constants)
Removes first occurrences of the constants associated with the expressionvoid
removeDefinitions(PrimitiveElement... elements)
Removes user defined elements (such as: Arguments, Constants, Functions) to the expressions.void
removeFunctions(String... functionsNames)
Removes first occurrences of the functions associated with the expression.void
removeFunctions(Function... functions)
Removes first occurrences of the functions associated with the expression.void
setArgumentValue(String argumentName, double argumentValue)
Sets argument value.void
setDescription(String description)
Sets expression description.void
setExpressionString(String expressionString)
Sets (modifies expression) expression string.void
setSilentMode()
Disables verbose mode (default silent mode).void
setVerboseMode()
Enables verbose mode.-
Methods inherited from class org.mariuszgromada.math.mxparser.PrimitiveElement
getMyTypeId
-
-
-
-
Field Detail
-
TYPE_ID
public static final int TYPE_ID
Expression type id- See Also:
- Constant Field Values
-
TYPE_DESC
public static String TYPE_DESC
-
NO_SYNTAX_ERRORS
public static final boolean NO_SYNTAX_ERRORS
Status of the syntax - no syntax error- See Also:
- Constant Field Values
-
SYNTAX_ERROR
public static final boolean SYNTAX_ERROR
Status of the syntax - syntax error or syntax status unknown- See Also:
- Constant Field Values
-
SYNTAX_ERROR_OR_STATUS_UNKNOWN
@Deprecated public static final boolean SYNTAX_ERROR_OR_STATUS_UNKNOWN
Deprecated.Planned to be removed, useSYNTAX_ERROR
insteadStatus of the syntax - syntax error or syntax status unknown- See Also:
- Constant Field Values
-
msStart
public static long msStart
-
msSum
public static long msSum
-
-
Constructor Detail
-
Expression
public Expression(PrimitiveElement... elements)
Default constructor - empty expression- Parameters:
elements
- Optional elements list (variadic - comma separated) of types: Argument, Constant, Function- See Also:
PrimitiveElement
-
Expression
public Expression(String expressionString, PrimitiveElement... elements)
Constructor - creates new expression from expression string.- Parameters:
expressionString
- definition of the expressionelements
- Optional elements list (variadic - comma separated) of types: Argument, Constant, Function- See Also:
PrimitiveElement
-
-
Method Detail
-
getErrorMessage
public String getErrorMessage()
Method return error message after calling checkSyntax() method or calculate().- Returns:
- Error message as string.
-
getSyntaxStatus
public boolean getSyntaxStatus()
Gets syntax status of the expression.- Returns:
- true if there are no syntax errors, false when syntax error was found or syntax status is unknown
-
setExpressionString
public void setExpressionString(String expressionString)
Sets (modifies expression) expression string.- Parameters:
expressionString
- the expression string
-
getExpressionString
public String getExpressionString()
Returns expression string- Returns:
- Expression string definition.
-
getCanonicalExpressionString
public String getCanonicalExpressionString()
Returns expression string- Returns:
- Expression string definition.
-
clearExpressionString
public void clearExpressionString()
Clears expression string
-
setDescription
public void setDescription(String description)
Sets expression description.- Parameters:
description
- the description string
-
getDescription
public String getDescription()
Gets expression description.- Returns:
- String description.
-
clearDescription
public void clearDescription()
Clears expression description
-
setVerboseMode
public void setVerboseMode()
Enables verbose mode.
-
setSilentMode
public void setSilentMode()
Disables verbose mode (default silent mode).
-
getVerboseMode
public boolean getVerboseMode()
Returns verbose mode status.- Returns:
- true if verbose mode is on, otherwise returns false.
-
enableImpliedMultiplicationMode
public void enableImpliedMultiplicationMode()
Sets implied multiplication
-
disableImpliedMultiplicationMode
public void disableImpliedMultiplicationMode()
Disables implied multiplication
-
checkIfImpliedMultiplicationMode
public boolean checkIfImpliedMultiplicationMode()
Gets implied multiplication status- Returns:
- true if implied multiplication is enabled, otherwise returns false.
-
enableUnicodeBuiltinKeyWordsMode
public void enableUnicodeBuiltinKeyWordsMode()
Enables unicode built-in parser keywords, this flag informs the parser that built-in unicode keywords are supported and will be recognized as functions or operators.
-
disableUnicodeBuiltinKeyWordsMode
public void disableUnicodeBuiltinKeyWordsMode()
Disables unicode built-in parser keywords, this flag informs the parser that built-in unicode keywords are not supported and will not be recognized as functions or operators.
-
checkIfUnicodeBuiltinKeyWordsMode
public boolean checkIfUnicodeBuiltinKeyWordsMode()
Gets unicode built-in parser keywords mode- Returns:
- true if unicode built-in parser keywords is enabled, otherwise returns false.
-
enableAttemptToFixExpStrMode
public void enableAttemptToFixExpStrMode()
Enables attempt to fix the expression String. For example, situations such as: "++" change to "+", "+-" changed to "-" "-+" changed to "-" "--" changed to "+"
-
disableAttemptToFixExpStrMode
public void disableAttemptToFixExpStrMode()
Disables attempt to fix the expression String. For example, situations such as: "++" change to "+", "+-" changed to "-" "-+" changed to "-" "--" changed ro "+"
-
checkIfAttemptToFixExpStrMode
public boolean checkIfAttemptToFixExpStrMode()
Gets attempt to fix expression string mode- Returns:
- true attempt to fix expression string mode is enabled, otherwise returns false.
-
getRecursiveMode
public boolean getRecursiveMode()
Gets recursive mode status- Returns:
- true if recursive mode is enabled, otherwise returns false.
-
getComputingTime
public double getComputingTime()
Gets computing time.- Returns:
- computing time in seconds.
-
addDefinitions
public void addDefinitions(PrimitiveElement... elements)
Adds user defined elements (such as: Arguments, Constants, Functions) to the expressions.- Parameters:
elements
- Elements list (variadic), where Argument, Constant, Function extend the same class PrimitiveElement- See Also:
PrimitiveElement
-
removeDefinitions
public void removeDefinitions(PrimitiveElement... elements)
Removes user defined elements (such as: Arguments, Constants, Functions) to the expressions.- Parameters:
elements
- Elements list (variadic), where Argument, Constant, Function extend the same class PrimitiveElement- See Also:
PrimitiveElement
-
addArguments
public void addArguments(Argument... arguments)
Adds arguments (variadic) to the expression definition.- Parameters:
arguments
- the arguments list (comma separated list)- See Also:
Argument
,RecursiveArgument
-
defineArguments
public void defineArguments(String... argumentsNames)
Enables to define the arguments (associated with the expression) based on the given arguments names.- Parameters:
argumentsNames
- the arguments names (variadic) comma separated list- See Also:
Argument
,RecursiveArgument
-
defineArgument
public void defineArgument(String argumentName, double argumentValue)
Enables to define the argument (associated with the expression) based on the argument name and the argument value.- Parameters:
argumentName
- the argument nameargumentValue
- the argument value- See Also:
Argument
,RecursiveArgument
-
getArgumentIndex
public int getArgumentIndex(String argumentName)
Gets argument index from the expression.- Parameters:
argumentName
- the argument name- Returns:
- The argument index if the argument name was found, otherwise returns Argument.NOT_FOUND
- See Also:
Argument
,RecursiveArgument
-
getArgument
public Argument getArgument(String argumentName)
Gets argument from the expression.- Parameters:
argumentName
- the argument name- Returns:
- The argument if the argument name was found, otherwise returns null.
- See Also:
Argument
,RecursiveArgument
-
getArgument
public Argument getArgument(int argumentIndex)
Gets argument from the expression.- Parameters:
argumentIndex
- the argument index- Returns:
- Argument if the argument index is between 0 and the last available argument index (getArgumentsNumber()-1), otherwise returns null.
- See Also:
Argument
,RecursiveArgument
-
getArgumentsNumber
public int getArgumentsNumber()
Gets number of arguments associated with the expression.- Returns:
- The number of arguments (int >= 0)
- See Also:
Argument
,RecursiveArgument
-
setArgumentValue
public void setArgumentValue(String argumentName, double argumentValue)
Sets argument value.- Parameters:
argumentName
- the argument nameargumentValue
- the argument value
-
getArgumentValue
public double getArgumentValue(String argumentName)
Gets argument vale.- Parameters:
argumentName
- the argument name- Returns:
- Argument value if argument name was found, otherwise return Double.NaN.
-
removeArguments
public void removeArguments(String... argumentsNames)
Removes first occurrences of the arguments associated with the expression.- Parameters:
argumentsNames
- the arguments names (variadic parameters) comma separated list- See Also:
Argument
,RecursiveArgument
-
removeArguments
public void removeArguments(Argument... arguments)
Removes first occurrences of the arguments associated with the expression.- Parameters:
arguments
- the arguments (variadic parameters) comma separated list- See Also:
Argument
,RecursiveArgument
-
removeAllArguments
public void removeAllArguments()
Removes all arguments associated with the expression.- See Also:
Argument
,RecursiveArgument
-
addConstants
public void addConstants(Constant... constants)
Adds constants (variadic parameters) to the expression definition.- Parameters:
constants
- the constants (comma separated list)- See Also:
Constant
-
addConstants
public void addConstants(List<Constant> constantsList)
Adds constants to the expression definition.- Parameters:
constantsList
- the list of constants- See Also:
Constant
-
defineConstant
public void defineConstant(String constantName, double constantValue)
Enables to define the constant (associated with the expression) based on the constant name and constant value.- Parameters:
constantName
- the constant nameconstantValue
- the constant value- See Also:
Constant
-
getConstantIndex
public int getConstantIndex(String constantName)
Gets constant index associated with the expression.- Parameters:
constantName
- the constant name- Returns:
- Constant index if constant name was found, otherwise return Constant.NOT_FOUND.
- See Also:
Constant
-
getConstant
public Constant getConstant(String constantName)
Gets constant associated with the expression.- Parameters:
constantName
- the constant name- Returns:
- Constant if constant name was found, otherwise return null.
- See Also:
Constant
-
getConstant
public Constant getConstant(int constantIndex)
Gets constant associated with the expression.- Parameters:
constantIndex
- the constant index- Returns:
- Constant if the constantIndex is between 0 and the last available constant index (getConstantsNumber() - 1), otherwise it returns null.
- See Also:
Constant
-
getConstantsNumber
public int getConstantsNumber()
Gets number of constants associated with the expression.- Returns:
- number of constants (int >= 0)
- See Also:
Constant
-
removeConstants
public void removeConstants(String... constantsNames)
Removes first occurrences of the constants associated with the expression.- Parameters:
constantsNames
- the constants names (variadic parameters) comma separated list- See Also:
Constant
-
removeConstants
public void removeConstants(Constant... constants)
Removes first occurrences of the constants associated with the expression- Parameters:
constants
- the constants (variadic parameters) comma separated list- See Also:
Constant
-
removeAllConstants
public void removeAllConstants()
Removes all constants associated with the expression- See Also:
Constant
-
addFunctions
public void addFunctions(Function... functions)
Adds functions (variadic parameters) to the expression definition.- Parameters:
functions
- the functions (variadic parameters) comma separated list- See Also:
Function
-
defineFunction
public void defineFunction(String functionName, String functionExpressionString, String... argumentsNames)
Enables to define the function (associated with the expression) based on the function name, function expression string and arguments names (variadic parameters).- Parameters:
functionName
- the function namefunctionExpressionString
- the expression stringargumentsNames
- the function arguments names (variadic parameters) comma separated list- See Also:
Function
-
getFunctionIndex
public int getFunctionIndex(String functionName)
Gets index of function associated with the expression.- Parameters:
functionName
- the function name- Returns:
- Function index if function name was found, otherwise returns Function.NOT_FOUND
- See Also:
Function
-
getFunction
public Function getFunction(String functionName)
Gets function associated with the expression.- Parameters:
functionName
- the function name- Returns:
- Function if function name was found, otherwise returns null.
- See Also:
Function
-
getFunction
public Function getFunction(int functionIndex)
Gets function associated with the expression.- Parameters:
functionIndex
- the function index- Returns:
- Function if function index is between 0 and the last available function index (getFunctionsNumber()-1), otherwise returns null.
- See Also:
Function
-
getFunctionsNumber
public int getFunctionsNumber()
Gets number of functions associated with the expression.- Returns:
- number of functions (int >= 0)
- See Also:
Function
-
removeFunctions
public void removeFunctions(String... functionsNames)
Removes first occurrences of the functions associated with the expression.- Parameters:
functionsNames
- the functions names (variadic parameters) comma separated list- See Also:
Function
-
removeFunctions
public void removeFunctions(Function... functions)
Removes first occurrences of the functions associated with the expression.- Parameters:
functions
- the functions (variadic parameters) comma separated list.- See Also:
Function
-
removeAllFunctions
public void removeAllFunctions()
Removes all functions associated with the expression.- See Also:
Function
-
checkLexSyntax
public boolean checkLexSyntax()
Checks syntax of the expression string.- Returns:
- true if syntax is ok
-
checkSyntax
public boolean checkSyntax()
Checks syntax of the expression string.- Returns:
- true if syntax is ok
-
calculate
public double calculate()
Calculates the expression value and registers all the calculation steps- Returns:
- The expression value if syntax was ok, otherwise returns Double.NaN.
-
calculate
public double calculate(CalcStepsRegister calcStepsRegister)
Calculates the expression value- Parameters:
calcStepsRegister
- A collection to store list of calculation steps, steps registered as strings.- Returns:
- The expression value if syntax was ok, otherwise returns Double.NaN.
-
getCopyOfInitialTokens
public List<Token> getCopyOfInitialTokens()
Tokenizes expression string and returns tokens list, including: string, type, level.- Returns:
- Copy of initial tokens.
- See Also:
Token
,mXparser.consolePrintTokens(List)
-
consolePrintCopyOfInitialTokens
public void consolePrintCopyOfInitialTokens()
Prints to the console copy of initial tokens. Presents how expression string is interpreted by the parser.- See Also:
getCopyOfInitialTokens()
-
getMissingUserDefinedArguments
public String[] getMissingUserDefinedArguments()
Returns missing user defined arguments names, i.e. sin(x) + cos(y) where x and y are not defined function will return x and y.- Returns:
- Array of missing user defined arguments names - distinct strings.
-
getMissingUserDefinedUnits
public String[] getMissingUserDefinedUnits()
Returns missing user defined units names, i.e. 2*[w] + [q] where [w] and [q] are not defined function will return [w] and [q].- Returns:
- Array of missing user defined units names - distinct strings.
-
getMissingUserDefinedFunctions
public String[] getMissingUserDefinedFunctions()
Returns missing user defined functions names, i.e. sin(x) + fun(x,y) where fun is not defined function will return fun.- Returns:
- Array of missing user defined functions names - distinct strings.
-
getHelp
public String getHelp()
Returns detailed user help on the syntax of mathematical expressions.- Returns:
- One string value containing all the help.
-
getHelp
public String getHelp(String query)
Returns detailed user help on the syntax of mathematical expressions. Allows simple and advanced searches.- Parameters:
query
- For a simple search, simply enter a word (e.g.: "sine"). Advanced search is also possible, please use one of the tags below: "key=" - keyword (e.g.: "key=sin"), "desc=" - description (e.g.: "desc=trigonometric"), "syn=" - syntax (e.g.: "syn=sin"), "type=" - type (e.g.: "type=unit"), "since=" - since (e.g.: "since=4.1"), "typeid=" - please refer to parser tokens (e.g.: "typeid=3"), "keyid=" - please refer to parser tokens (e.g.: "keyid=1004"). Only one tag can be used per search.- Returns:
- One string value containing all the help.
-
getHelp
public String getHelp(boolean addHeader, boolean addCaption, String caption)
Returns detailed user help on the syntax of mathematical expressions. Allows simple and advanced searches.- Parameters:
addHeader
- Indicator whether to add a header.addCaption
- Indicator whether to add caption.caption
- If a non-standard caption is to be added, any string other than "" will replace the standard caption with the one specified by the user.- Returns:
- One string value containing all the help.
-
getHelp
public String getHelp(String query, boolean addHeader, boolean addCaption, String caption)
Returns detailed user help on the syntax of mathematical expressions. Allows simple and advanced searches.- Parameters:
query
- For a simple search, simply enter a word (e.g.: "sine"). Advanced search is also possible, please use one of the tags below: "key=" - keyword (e.g.: "key=sin"), "desc=" - description (e.g.: "desc=trigonometric"), "syn=" - syntax (e.g.: "syn=sin"), "type=" - type (e.g.: "type=unit"), "since=" - since (e.g.: "since=4.1"), "typeid=" - please refer to parser tokens (e.g.: "typeid=3"), "keyid=" - please refer to parser tokens (e.g.: "keyid=1004"). Only one tag can be used per search.addHeader
- Indicator whether to add a header.addCaption
- Indicator whether to add caption.caption
- If a non-standard caption is to be added, any string other than ""- Returns:
- One string value containing all the help.
-
getHelpAsCsv
public String getHelpAsCsv()
Returns (as CSV) detailed user help on the syntax of mathematical expressions.- Returns:
- One string value in CSV format containing all the help.
-
getHelpAsCsv
public String getHelpAsCsv(String query)
Returns (as CSV) detailed user help on the syntax of mathematical expressions. Allows simple and advanced searches.- Parameters:
query
- For a simple search, simply enter a word (e.g.: "sine"). Advanced search is also possible, please use one of the tags below: "key=" - keyword (e.g.: "key=sin"), "desc=" - description (e.g.: "desc=trigonometric"), "syn=" - syntax (e.g.: "syn=sin"), "type=" - type (e.g.: "type=unit"), "since=" - since (e.g.: "since=4.1"), "typeid=" - please refer to parser tokens (e.g.: "typeid=3"), "keyid=" - please refer to parser tokens (e.g.: "keyid=1004"). Only one tag can be used per search.- Returns:
- One string value in CSV format containing all the help.
-
getHelpAsCsv
public String getHelpAsCsv(String quote, String delimiter, boolean addHeader)
Returns (as CSV) detailed user help on the syntax of mathematical expressions.- Parameters:
quote
- Text qualifier.delimiter
- Delimiter.addHeader
- Indicator whether to add a header.- Returns:
- One string value in CSV format containing all the help.
-
getHelpAsCsv
public String getHelpAsCsv(String query, String quote, String delimiter, boolean addHeader)
Returns (as CSV) detailed user help on the syntax of mathematical expressions. Allows simple and advanced searches.- Parameters:
query
- For a simple search, simply enter a word (e.g.: "sine"). Advanced search is also possible, please use one of the tags below: "key=" - keyword (e.g.: "key=sin"), "desc=" - description (e.g.: "desc=trigonometric"), "syn=" - syntax (e.g.: "syn=sin"), "type=" - type (e.g.: "type=unit"), "since=" - since (e.g.: "since=4.1"), "typeid=" - please refer to parser tokens (e.g.: "typeid=3"), "keyid=" - please refer to parser tokens (e.g.: "keyid=1004"). Only one tag can be used per search.quote
- Text qualifier.delimiter
- Delimiter.addHeader
- Indicator whether to add a header.- Returns:
- One string value in CSV format containing all the help.
-
getHelpAsHtmlTable
public String getHelpAsHtmlTable()
Returns (as HTML table) detailed user help on the syntax of mathematical expressions.- Returns:
- One string value containing all the help. String in HTML table format.
-
getHelpAsHtmlTable
public String getHelpAsHtmlTable(String query)
Returns (as HTML table) detailed user help on the syntax of mathematical expressions.- Parameters:
query
- For a simple search, simply enter a word (e.g.: "sine"). Advanced search is also possible, please use one of the tags below: "key=" - keyword (e.g.: "key=sin"), "desc=" - description (e.g.: "desc=trigonometric"), "syn=" - syntax (e.g.: "syn=sin"), "type=" - type (e.g.: "type=unit"), "since=" - since (e.g.: "since=4.1"), "typeid=" - please refer to parser tokens (e.g.: "typeid=3"), "keyid=" - please refer to parser tokens (e.g.: "keyid=1004"). Only one tag can be used per search.- Returns:
- One string value containing all the help. String in HTML table format.
-
getHelpAsHtmlTable
public String getHelpAsHtmlTable(boolean addHeader, boolean addCaption, boolean addFigure, String caption, String cssClass)
Returns (as HTML table) detailed user help on the syntax of mathematical expressions.- Parameters:
addHeader
- Indicator whether to add a header.addCaption
- Indicator whether to add caption.addFigure
- Indicator whether to add a FIGURE tag.caption
- If a non-standard caption is to be added, use any string other than "".cssClass
- If CSS class is to be added, use any string other than "".- Returns:
- One string value containing all the help. String in HTML table format.
-
getHelpAsHtmlTable
public String getHelpAsHtmlTable(String query, boolean addHeader, boolean addCaption, boolean addFigure, String caption, String cssClass)
Returns (as HTML table) detailed user help on the syntax of mathematical expressions. Allows simple and advanced searches.- Parameters:
query
- For a simple search, simply enter a word (e.g.: "sine"). Advanced search is also possible, please use one of the tags below: "key=" - keyword (e.g.: "key=sin"), "desc=" - description (e.g.: "desc=trigonometric"), "syn=" - syntax (e.g.: "syn=sin"), "type=" - type (e.g.: "type=unit"), "since=" - since (e.g.: "since=4.1"), "typeid=" - please refer to parser tokens (e.g.: "typeid=3"), "keyid=" - please refer to parser tokens (e.g.: "keyid=1004"). Only one tag can be used per search.addHeader
- Indicator whether to add a header.addCaption
- Indicator whether to add caption.addFigure
- Indicator whether to add a FIGURE tag.caption
- If a non-standard caption is to be added, use any string other than "".cssClass
- If CSS class is to be added, use any string other than "".- Returns:
- One string value containing all the help. String in HTML table format.
-
getHelpAsMarkdownTable
public String getHelpAsMarkdownTable()
Returns (as Markdown table) detailed user help on the syntax of mathematical expressions.- Returns:
- One string value containing all the help. String in Markdown table format.
-
getHelpAsMarkdownTable
public String getHelpAsMarkdownTable(String query)
Returns (as Markdown table) detailed user help on the syntax of mathematical expressions. Allows simple and advanced searches.- Parameters:
query
- For a simple search, simply enter a word (e.g.: "sine"). Advanced search is also possible, please use one of the tags below: "key=" - keyword (e.g.: "key=sin"), "desc=" - description (e.g.: "desc=trigonometric"), "syn=" - syntax (e.g.: "syn=sin"), "type=" - type (e.g.: "type=unit"), "since=" - since (e.g.: "since=4.1"), "typeid=" - please refer to parser tokens (e.g.: "typeid=3"), "keyid=" - please refer to parser tokens (e.g.: "keyid=1004"). Only one tag can be used per search.- Returns:
- One string value containing all the help. String in Markdown table format.
-
getHelpAsMarkdownTable
public String getHelpAsMarkdownTable(boolean addHeader, boolean addCaption, String caption)
Returns (as Markdown table) detailed user help on the syntax of mathematical expressions.- Parameters:
addHeader
- Indicator whether to add a header.addCaption
- Indicator whether to add caption.caption
- If a non-standard caption is to be added, use any string other than "".- Returns:
- One string value containing all the help. String in Markdown table format.
-
getHelpAsMarkdownTable
public String getHelpAsMarkdownTable(String query, boolean addHeader, boolean addCaption, String caption)
Returns (as Markdown table) detailed user help on the syntax of mathematical expressions. Allows simple and advanced searches.- Parameters:
query
- For a simple search, simply enter a word (e.g.: "sine"). Advanced search is also possible, please use one of the tags below: "key=" - keyword (e.g.: "key=sin"), "desc=" - description (e.g.: "desc=trigonometric"), "syn=" - syntax (e.g.: "syn=sin"), "type=" - type (e.g.: "type=unit"), "since=" - since (e.g.: "since=4.1"), "typeid=" - please refer to parser tokens (e.g.: "typeid=3"), "keyid=" - please refer to parser tokens (e.g.: "keyid=1004"). Only one tag can be used per search.addHeader
- Indicator whether to add a header.addCaption
- Indicator whether to add caption.caption
- If a non-standard caption is to be added, use any string other than "".- Returns:
- One string value containing all the help. String in Markdown table format.
-
getHelpAsJson
public String getHelpAsJson()
Returns (as Json) detailed user help on the syntax of mathematical expressions.- Returns:
- One string value containing all the help. String in Json format.
-
getHelpAsJson
public String getHelpAsJson(String query)
Returns (as Json) detailed user help on the syntax of mathematical expressions. Allows simple and advanced searches.- Parameters:
query
- For a simple search, simply enter a word (e.g.: "sine"). Advanced search is also possible, please use one of the tags below: "key=" - keyword (e.g.: "key=sin"), "desc=" - description (e.g.: "desc=trigonometric"), "syn=" - syntax (e.g.: "syn=sin"), "type=" - type (e.g.: "type=unit"), "since=" - since (e.g.: "since=4.1"), "typeid=" - please refer to parser tokens (e.g.: "typeid=3"), "keyid=" - please refer to parser tokens (e.g.: "keyid=1004"). Only one tag can be used per search.- Returns:
- One string value containing all the help. String in Json format.
-
getHelpAsJson
public String getHelpAsJson(boolean addCaption, String caption)
Returns (as Json) detailed user help on the syntax of mathematical expressions.- Parameters:
addCaption
- Indicator whether to add caption.caption
- If a non-standard caption is to be added, use any string other than "".- Returns:
- One string value containing all the help. String in Json format.
-
getHelpAsJson
public String getHelpAsJson(String query, boolean addCaption, String caption)
Returns (as Json) detailed user help on the syntax of mathematical expressions. Allows simple and advanced searches.- Parameters:
query
- For a simple search, simply enter a word (e.g.: "sine"). Advanced search is also possible, please use one of the tags below: "key=" - keyword (e.g.: "key=sin"), "desc=" - description (e.g.: "desc=trigonometric"), "syn=" - syntax (e.g.: "syn=sin"), "type=" - type (e.g.: "type=unit"), "since=" - since (e.g.: "since=4.1"), "typeid=" - please refer to parser tokens (e.g.: "typeid=3"), "keyid=" - please refer to parser tokens (e.g.: "keyid=1004"). Only one tag can be used per search.addCaption
- Indicator whether to add caption.caption
- If a non-standard caption is to be added, use any string other than "".- Returns:
- One string value containing all the help. String in Json format.
-
getKeyWords
public List<KeyWord> getKeyWords()
Returns list of keywords known to the parser- Returns:
- List of keywords known to the parser.
- See Also:
KeyWord
,KeyWord.wordTypeId
,getHelp()
-
getKeyWords
public List<KeyWord> getKeyWords(String query)
Returns list of keywords known to the parser. Allows simple and advanced searches.- Parameters:
query
- For a simple search, simply enter a word (e.g.: "sine"). Advanced search is also possible, please use one of the tags below: "key=" - keyword (e.g.: "key=sin"), "desc=" - description (e.g.: "desc=trigonometric"), "syn=" - syntax (e.g.: "syn=sin"), "type=" - type (e.g.: "type=unit"), "since=" - since (e.g.: "since=4.1"), "typeid=" - please refer to parser tokens (e.g.: "typeid=3"), "keyid=" - please refer to parser tokens (e.g.: "keyid=1004"). Only one tag can be used per search.- Returns:
- List of keywords known to the parser filter against query string.
- See Also:
KeyWord
,KeyWord.wordTypeId
,getHelp(String)
-
clone
protected Expression clone()
Expression cloning.
-
cloneForThreadSafe
public Expression cloneForThreadSafe()
Creates a completely independent 1-1 clone that can be safely used by a separate thread. If the cloned element contains references to other elements (e.g. arguments, functions, constants), then they will also be cloned and the newly created element will contain references to the corresponding clones. Important - the API allows you to extract all these clones.- Returns:
- Cloned object.
-
-