C3D Toolkit  Kernel - 117982, Vision - 2.9.2.2
pars_yacc.h File Reference

Algorithm of syntax parsing of algebraic expression. More...

`#include <math_define.h>`
`#include <pars_tree_variable.h>`
`#include <vector>`

## Functions

EquTreeResCode CreateBTreeForEquation (const c3d::string_t &equstr, ItEquVarCreator &varsCreator, std::unique_ptr< BTreeNode > &dRoot)
Create a tree of equations (a = b + c) by parametric calculator. More...

EquTreeResCode CreateBTreeForExpression (const c3d::string_t &equstr, ItEquVarCreator *varsCreator, std::unique_ptr< BTreeNode > &root, std::unique_ptr< TreeIntervalNode > &iRoot)
Create a tree of equations (b + c + d) by parametric calculator. More...

EquTreeResCode CreateVariable (const c3d::string_t &expression, ItEquVarCreator &)
Create variable. More...

bool IsInequality (const c3d::string_t &)
Whether expression is inequation. More...

EquTreeResCode CreateBTreeForEquation (const TCHAR *equstr, ItEquVarCreator &varsCreator, std::unique_ptr< BTreeNode > &dRoot)
Create a tree of equations (a = b + c) by parametric calculator. More...

EquTreeResCode CreateBTreeForExpression (const TCHAR *equstr, ItEquVarCreator *varsCreator, std::unique_ptr< BTreeNode > &root, std::unique_ptr< TreeIntervalNode > &iRoot)
Create a tree of equations (b + c + d) by parametric calculator. More...

EquTreeResCode CreateVariable (const TCHAR *expression, ItEquVarCreator &)
Create variable. More...

bool IsInequality (const TCHAR *)
Whether expression is inequation. More...

## Variables

constexpr size_t MAX_VARIABLE_NAME_LENGTH = 512
Maximum length of variable.

constexpr size_t MAX_EQU_LENGTH = 8192
Maximum length of expression.

## Detailed Description

Algorithm of syntax parsing of algebraic expression.