libSBML Perl API  libSBML 5.17.2 Perl API
ASTNodeType.h File Reference

Enumeration for Abstract Syntax Tree (AST). More...

Include dependency graph for ASTNodeType.h:
This graph shows which files directly or indirectly include this file:

Enumerations

enum  AllowedChildrenType_t {
  ALLOWED_CHILDREN_ANY,
  ALLOWED_CHILDREN_ATLEAST,
  ALLOWED_CHILDREN_EXACTLY,
  ALLOWED_CHILDREN_UNKNOWN
}
 
enum  ASTNodeType_t {
  AST_PLUS = 43,
  AST_MINUS = 45,
  AST_TIMES = 42,
  AST_DIVIDE = 47,
  AST_POWER = 94,
  AST_INTEGER = 256,
  AST_REAL,
  AST_REAL_E,
  AST_RATIONAL,
  AST_NAME,
  AST_NAME_AVOGADRO,
  AST_NAME_TIME,
  AST_CONSTANT_E,
  AST_CONSTANT_FALSE,
  AST_CONSTANT_PI,
  AST_CONSTANT_TRUE,
  AST_LAMBDA,
  AST_FUNCTION,
  AST_FUNCTION_ABS,
  AST_FUNCTION_ARCCOS,
  AST_FUNCTION_ARCCOSH,
  AST_FUNCTION_ARCCOT,
  AST_FUNCTION_ARCCOTH,
  AST_FUNCTION_ARCCSC,
  AST_FUNCTION_ARCCSCH,
  AST_FUNCTION_ARCSEC,
  AST_FUNCTION_ARCSECH,
  AST_FUNCTION_ARCSIN,
  AST_FUNCTION_ARCSINH,
  AST_FUNCTION_ARCTAN,
  AST_FUNCTION_ARCTANH,
  AST_FUNCTION_CEILING,
  AST_FUNCTION_COS,
  AST_FUNCTION_COSH,
  AST_FUNCTION_COT,
  AST_FUNCTION_COTH,
  AST_FUNCTION_CSC,
  AST_FUNCTION_CSCH,
  AST_FUNCTION_DELAY,
  AST_FUNCTION_EXP,
  AST_FUNCTION_FACTORIAL,
  AST_FUNCTION_FLOOR,
  AST_FUNCTION_LN,
  AST_FUNCTION_LOG,
  AST_FUNCTION_PIECEWISE,
  AST_FUNCTION_POWER,
  AST_FUNCTION_ROOT,
  AST_FUNCTION_SEC,
  AST_FUNCTION_SECH,
  AST_FUNCTION_SIN,
  AST_FUNCTION_SINH,
  AST_FUNCTION_TAN,
  AST_FUNCTION_TANH,
  AST_LOGICAL_AND,
  AST_LOGICAL_NOT,
  AST_LOGICAL_OR,
  AST_LOGICAL_XOR,
  AST_RELATIONAL_EQ,
  AST_RELATIONAL_GEQ,
  AST_RELATIONAL_GT,
  AST_RELATIONAL_LEQ,
  AST_RELATIONAL_LT,
  AST_RELATIONAL_NEQ,
  AST_END_OF_CORE = 315,
  AST_FUNCTION_MAX = 320,
  AST_FUNCTION_MIN,
  AST_FUNCTION_QUOTIENT,
  AST_FUNCTION_RATE_OF,
  AST_FUNCTION_REM,
  AST_LOGICAL_IMPLIES,
  AST_CSYMBOL_FUNCTION = 400,
  AST_DISTRIB_FUNCTION_NORMAL = 500,
  AST_DISTRIB_FUNCTION_UNIFORM,
  AST_DISTRIB_FUNCTION_BERNOULLI,
  AST_DISTRIB_FUNCTION_BINOMIAL,
  AST_DISTRIB_FUNCTION_CAUCHY,
  AST_DISTRIB_FUNCTION_CHISQUARE,
  AST_DISTRIB_FUNCTION_EXPONENTIAL,
  AST_DISTRIB_FUNCTION_GAMMA,
  AST_DISTRIB_FUNCTION_LAPLACE,
  AST_DISTRIB_FUNCTION_LOGNORMAL,
  AST_DISTRIB_FUNCTION_POISSON,
  AST_DISTRIB_FUNCTION_RAYLEIGH,
  AST_LINEAR_ALGEBRA_VECTOR,
  AST_LINEAR_ALGEBRA_SELECTOR,
  AST_LINEAR_ALGEBRA_MATRIX,
  AST_LINEAR_ALGEBRA_MATRIXROW,
  AST_LINEAR_ALGEBRA_DETERMINANT,
  AST_LINEAR_ALGEBRA_TRANSPOSE,
  AST_LINEAR_ALGEBRA_VECTOR_PRODUCT,
  AST_LINEAR_ALGEBRA_SCALAR_PRODUCT,
  AST_LINEAR_ALGEBRA_OUTER_PRODUCT,
  AST_LOGICAL_EXISTS,
  AST_LOGICAL_FORALL,
  AST_STATISTICS_MEAN,
  AST_STATISTICS_MEDIAN,
  AST_STATISTICS_MODE,
  AST_STATISTICS_MOMENT,
  AST_SERIES_PRODUCT,
  AST_STATISTICS_SDEV,
  AST_SERIES_SUM,
  AST_STATISTICS_VARIANCE,
  AST_UNKNOWN
}
 ASTNodeType_t is the enumeration of possible ASTNode types. More...
 
enum  ExtendedMathType_t {
  EM_L3V2,
  EM_DISTRIB,
  EM_ARRAYS,
  EM_UNKNOWN
}
 

Detailed Description

Enumeration for Abstract Syntax Tree (AST).

Author
Sarah M Keating

Enumeration Type Documentation

◆ AllowedChildrenType_t

Enumerator
ALLOWED_CHILDREN_ANY 

Extended math added in l3v2

ALLOWED_CHILDREN_ATLEAST 

Extended math added by the 'distrib' package

ALLOWED_CHILDREN_EXACTLY 

Unknown node: will not produce any MathML

ALLOWED_CHILDREN_UNKNOWN 

◆ ASTNodeType_t

ASTNodeType_t is the enumeration of possible ASTNode types.

See also
ASTNode::getType()
ASTNode::canonicalize()
Enumerator
AST_PLUS 

Plus (MathML <plus>)

AST_MINUS 

Minus (MathML <minus>)

AST_TIMES 

Times (MathML <times>)

AST_DIVIDE 

Divide (MathML <divide>)

AST_POWER 

Power (MathML <power>)

AST_INTEGER 

Integer (MathML <cn type="integer">)

AST_REAL 

Real (MathML <cn>)

AST_REAL_E 

Real number with e-notation (MathML <cn type="e-notation"> [number] <sep/> [number] </cn>)

AST_RATIONAL 

Rational (MathML <cn type="rational"> [number] <sep/> [number] <cn>)

AST_NAME 

A named node (MathML <ci>)

AST_NAME_AVOGADRO 

Avogadro (MathML <ci encoding="text" definitionURL="http://www.sbml.org/sbml/symbols/avogadro">)

AST_NAME_TIME 

Time (MathML <ci encoding="text" definitionURL="http://www.sbml.org/sbml/symbols/time">)

AST_CONSTANT_E 

Exponential E (MathML <exponentiale>)

AST_CONSTANT_FALSE 

False (MathML <false>)

AST_CONSTANT_PI 

Pi (MathML <pi>)

AST_CONSTANT_TRUE 

True (MathML <true>)

AST_LAMBDA 

Lambda (MathML <lambda>)

AST_FUNCTION 

User-defined function (MathML <apply>)

AST_FUNCTION_ABS 

Absolute value (MathML <abs>)

AST_FUNCTION_ARCCOS 

Arccosine (MathML <arccos>)

AST_FUNCTION_ARCCOSH 

Hyperbolic arccosine (MathML <arccosh>)

AST_FUNCTION_ARCCOT 

Arccotangent (MathML <arccot>)

AST_FUNCTION_ARCCOTH 

Hyperbolic arccotangent (MathML <arccoth>)

AST_FUNCTION_ARCCSC 

Arccosecant (MathML <arccsc>)

AST_FUNCTION_ARCCSCH 

Hyperbolic arccosecant (MathML <arccsch>)

AST_FUNCTION_ARCSEC 

Arcsecant (MathML <arcsec>)

AST_FUNCTION_ARCSECH 

Hyperbolic arcsecant (MathML <arcsech>)

AST_FUNCTION_ARCSIN 

Arcsine (MathML <arcsin>)

AST_FUNCTION_ARCSINH 

Hyperbolic arcsine (MathML <arcsinh>)

AST_FUNCTION_ARCTAN 

Arctangent (MathML <arctan>)

AST_FUNCTION_ARCTANH 

Hyperbolic arctangent (MathML <arctanh>)

AST_FUNCTION_CEILING 

Ceiling (MathML <ceiling>)

AST_FUNCTION_COS 

Cosine (MathML <cosine>)

AST_FUNCTION_COSH 

Hyperbolic cosine (MathML <cosh>)

AST_FUNCTION_COT 

Cotangent (MathML <cot>)

AST_FUNCTION_COTH 

Hyperbolic cotangent (MathML <coth>)

AST_FUNCTION_CSC 

Cosecant (MathML <csc>)

AST_FUNCTION_CSCH 

Hyperbolic cosecant (MathML <csch>)

AST_FUNCTION_DELAY 

Delay (MathML <csymbol encoding="text" definitionURL="http://www.sbml.org/sbml/symbols/delay">)

AST_FUNCTION_EXP 

Exponential (MathML <exp>)

AST_FUNCTION_FACTORIAL 

Factorial (MathML <factorial>)

AST_FUNCTION_FLOOR 

Floor (MathML <floor>)

AST_FUNCTION_LN 

Natural Log (MathML <ln>)

AST_FUNCTION_LOG 

Log (MathML <log>)

AST_FUNCTION_PIECEWISE 

Piecewise (MathML <piecewise>)

AST_FUNCTION_POWER 

Power (MathML <power>)

AST_FUNCTION_ROOT 

Root (MathML <root>)

AST_FUNCTION_SEC 

Secant (MathML <sec>)

AST_FUNCTION_SECH 

Hyperbolic secant (MathML <sech>)

AST_FUNCTION_SIN 

Sine (MathML <sin>)

AST_FUNCTION_SINH 

Hyperbolic sine (MathML <sinh>)

AST_FUNCTION_TAN 

Tangent (MathML <tan>)

AST_FUNCTION_TANH 

Hyperbolic tangent (MathML <tanh>)

AST_LOGICAL_AND 

Logical and (MathML <and>)

AST_LOGICAL_NOT 

Logical not (MathML <not>)

AST_LOGICAL_OR 

Logical or (MathML <or>)

AST_LOGICAL_XOR 

Logical exclusive or (MathML <xor>)

AST_RELATIONAL_EQ 

Equal (MathML <eq>)

AST_RELATIONAL_GEQ 

Greater than or equal (MathML <geq>)

AST_RELATIONAL_GT 

Greater than (MathML <gt>)

AST_RELATIONAL_LEQ 

Less than or equal (MathML <leq>)

AST_RELATIONAL_LT 

Less than (MathML <lt>)

AST_RELATIONAL_NEQ 

Not equal (MathML <neq>)

AST_END_OF_CORE 
AST_FUNCTION_MAX 
AST_FUNCTION_MIN 
AST_FUNCTION_QUOTIENT 
AST_FUNCTION_RATE_OF 
AST_FUNCTION_REM 
AST_LOGICAL_IMPLIES 
AST_CSYMBOL_FUNCTION 
AST_DISTRIB_FUNCTION_NORMAL 
AST_DISTRIB_FUNCTION_UNIFORM 
AST_DISTRIB_FUNCTION_BERNOULLI 
AST_DISTRIB_FUNCTION_BINOMIAL 
AST_DISTRIB_FUNCTION_CAUCHY 
AST_DISTRIB_FUNCTION_CHISQUARE 
AST_DISTRIB_FUNCTION_EXPONENTIAL 
AST_DISTRIB_FUNCTION_GAMMA 
AST_DISTRIB_FUNCTION_LAPLACE 
AST_DISTRIB_FUNCTION_LOGNORMAL 
AST_DISTRIB_FUNCTION_POISSON 
AST_DISTRIB_FUNCTION_RAYLEIGH 
AST_LINEAR_ALGEBRA_VECTOR 
AST_LINEAR_ALGEBRA_SELECTOR 
AST_LINEAR_ALGEBRA_MATRIX 
AST_LINEAR_ALGEBRA_MATRIXROW 
AST_LINEAR_ALGEBRA_DETERMINANT 
AST_LINEAR_ALGEBRA_TRANSPOSE 
AST_LINEAR_ALGEBRA_VECTOR_PRODUCT 
AST_LINEAR_ALGEBRA_SCALAR_PRODUCT 
AST_LINEAR_ALGEBRA_OUTER_PRODUCT 
AST_LOGICAL_EXISTS 
AST_LOGICAL_FORALL 
AST_STATISTICS_MEAN 
AST_STATISTICS_MEDIAN 
AST_STATISTICS_MODE 
AST_STATISTICS_MOMENT 
AST_SERIES_PRODUCT 
AST_STATISTICS_SDEV 
AST_SERIES_SUM 
AST_STATISTICS_VARIANCE 
AST_UNKNOWN 

Unknown node: will not produce any MathML

◆ ExtendedMathType_t

Enumerator
EM_L3V2 

Extended math added in l3v2

EM_DISTRIB 

Extended math added by the 'distrib' package

EM_ARRAYS 

Extended math added by the 'arrays' package

EM_UNKNOWN 

Unknown node: will not produce any MathML