public class Expression extends PrimitiveElement
Class provides easy way to define multivariate arithmetic expression.
Argument,
RecursiveArgument,
Constant,
Function| Modifier and Type | Field and Description |
|---|---|
static boolean |
NO_SYNTAX_ERRORS
Status of the Expression syntax
|
static boolean |
SYNTAX_ERROR_OR_STATUS_UNKNOWN |
static String |
TYPE_DESC |
static int |
TYPE_ID
Expression type id
|
| Constructor and Description |
|---|
Expression(PrimitiveElement... elements)
Default constructor - empty expression
|
Expression(String expressionString,
PrimitiveElement... elements)
Constructor - creates new expression from expression string.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addArguments(Argument... arguments)
Adds arguments (variadic) to the expression definition.
|
void |
addConstants(Constant... constants)
Adds constants (variadic parameters) to the expression definition.
|
void |
addConstants(List<Constant> constantsList)
Adds constants 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
|
boolean |
checkLexSyntax()
Checks syntax of the expression string.
|
boolean |
checkSyntax()
Checks syntax of the expression string.
|
void |
clearDescription()
Clears expression description
|
void |
clearExpressionString()
Clears expression string
|
protected Expression |
clone()
Expression cloning.
|
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).
|
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.
|
double |
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 string
|
Function |
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()
Gets help content.
|
String |
getHelp(String word)
Searching help content.
|
List<KeyWord> |
getKeyWords()
Returns list of key words known to the parser
|
List<KeyWord> |
getKeyWords(String query)
Returns list of key words 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 status
|
boolean |
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 expression
|
void |
removeAllFunctions()
Removes all functions
associated with the expression.
|
void |
removeArguments(Argument... arguments)
Removes first occurrences of the arguments
associated with the expression.
|
void |
removeArguments(String... argumentsNames)
Removes first occurrences of the arguments
associated with the expression.
|
void |
removeConstants(Constant... constants)
Removes first occurrences of the constants
associated with the expression
|
void |
removeConstants(String... constantsNames)
Removes first occurrences of the constants
associated with the expression.
|
void |
removeDefinitions(PrimitiveElement... elements)
Removes user defined elements (such as: Arguments, Constants, Functions)
to the expressions.
|
void |
removeFunctions(Function... functions)
Removes first occurrences of the functions
associated with the expression.
|
void |
removeFunctions(String... functionsNames)
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.
|
getMyTypeIdpublic static final int TYPE_ID
public static final String TYPE_DESC
public static final boolean NO_SYNTAX_ERRORS
public static final boolean SYNTAX_ERROR_OR_STATUS_UNKNOWN
public Expression(PrimitiveElement... elements)
elements - Optional elements list (variadic - comma separated) of types: Argument, Constant, FunctionPrimitiveElementpublic Expression(String expressionString, PrimitiveElement... elements)
expressionString - definition of the expressionelements - Optional elements list (variadic - comma separated) of types: Argument, Constant, FunctionPrimitiveElementpublic String getErrorMessage()
public boolean getSyntaxStatus()
public void setExpressionString(String expressionString)
expressionString - the expression stringpublic String getExpressionString()
public void clearExpressionString()
public void setDescription(String description)
description - the description stringpublic String getDescription()
public void clearDescription()
public void setVerboseMode()
public void setSilentMode()
public boolean getVerboseMode()
public boolean getRecursiveMode()
public double getComputingTime()
public void addDefinitions(PrimitiveElement... elements)
elements - Elements list (variadic), where Argument, Constant, Function
extend the same class PrimitiveElementPrimitiveElementpublic void removeDefinitions(PrimitiveElement... elements)
elements - Elements list (variadic), where Argument, Constant, Function
extend the same class PrimitiveElementPrimitiveElementpublic void addArguments(Argument... arguments)
arguments - the arguments list
(comma separated list)Argument,
RecursiveArgumentpublic void defineArguments(String... argumentsNames)
argumentsNames - the arguments names (variadic)
comma separated listArgument,
RecursiveArgumentpublic void defineArgument(String argumentName, double argumentValue)
argumentName - the argument nameargumentValue - the the argument valueArgument,
RecursiveArgumentpublic int getArgumentIndex(String argumentName)
argumentName - the argument nameArgument,
RecursiveArgumentpublic Argument getArgument(String argumentName)
argumentName - the argument nameArgument,
RecursiveArgumentpublic Argument getArgument(int argumentIndex)
argumentIndex - the argument indexArgument,
RecursiveArgumentpublic int getArgumentsNumber()
Argument,
RecursiveArgumentpublic void setArgumentValue(String argumentName, double argumentValue)
argumentName - the argument nameargumentValue - the argument valuepublic double getArgumentValue(String argumentName)
argumentName - the argument namepublic void removeArguments(String... argumentsNames)
argumentsNames - the arguments names
(variadic parameters) comma separated
listArgument,
RecursiveArgumentpublic void removeArguments(Argument... arguments)
arguments - the arguments (variadic parameters)
comma separated listArgument,
RecursiveArgumentpublic void removeAllArguments()
Argument,
RecursiveArgumentpublic void addConstants(Constant... constants)
constants - the constants
(comma separated list)Constantpublic void addConstants(List<Constant> constantsList)
constantsList - the list of constantsConstantpublic void defineConstant(String constantName, double constantValue)
constantName - the constant nameconstantValue - the constant valueConstantpublic int getConstantIndex(String constantName)
constantName - the constant nameConstantpublic Constant getConstant(String constantName)
constantName - the constant nameConstantpublic Constant getConstant(int constantIndex)
constantIndex - the constant indexConstantpublic int getConstantsNumber()
Constantpublic void removeConstants(String... constantsNames)
constantsNames - the constants names (variadic parameters)
comma separated listConstantpublic void removeConstants(Constant... constants)
constants - the constants (variadic parameters)
comma separated listConstantpublic void removeAllConstants()
Constantpublic void addFunctions(Function... functions)
functions - the functions
(variadic parameters) comma separated listFunctionpublic void defineFunction(String functionName, String functionExpressionString, String... argumentsNames)
functionName - the function namefunctionExpressionString - the expression stringargumentsNames - the function arguments names
(variadic parameters)
comma separated listFunctionpublic int getFunctionIndex(String functionName)
functionName - the function nameFunctionpublic Function getFunction(String functionName)
functionName - the function nameFunctionpublic Function getFunction(int functionIndex)
functionIndex - the function indexFunctionpublic int getFunctionsNumber()
Functionpublic void removeFunctions(String... functionsNames)
functionsNames - the functions names (variadic parameters)
comma separated listFunctionpublic void removeFunctions(Function... functions)
functions - the functions (variadic parameters)
comma separated list.Functionpublic void removeAllFunctions()
Functionpublic boolean checkLexSyntax()
public boolean checkSyntax()
public double calculate()
public List<Token> getCopyOfInitialTokens()
Token,
mXparser.consolePrintTokens(List)public String[] getMissingUserDefinedArguments()
public String[] getMissingUserDefinedUnits()
public String[] getMissingUserDefinedFunctions()
public String getHelp()
public String getHelp(String word)
word - searching key wordpublic List<KeyWord> getKeyWords()
KeyWord,
KeyWord.wordTypeId,
getHelp()public List<KeyWord> getKeyWords(String query)
query - Give any string to filter list of key words against this string.
User more precise syntax: str=tokenString, desc=tokenDescription,
syn=TokenSyntax, sin=tokenSince, wid=wordId, tid=wordTypeId
to narrow the result.KeyWord,
KeyWord.wordTypeId,
getHelp(String)protected Expression clone()
Copyright © 2020 MathParser.org. All rights reserved.