Index

C++ Code Documentation

template <class NUMBER> eval::expr_base

File: BASE/eval/ExprBase.H

public:
  • expr_base();
    constructor
  • expr_base( expr_base<NUMBER> const & );
    copy constructor
  • ~expr_base();
    destructor
  • expr_base &operator=( expr_base<NUMBER> const & );
    assignmet operator
  • void create_variable( char const *, size_t len );
  • inline void create_variable( char const * );
  • inline void create_variable( base::String const & );
  • void set_variable( char const *, size_t len, NUMBER );
  • inline void set_variable( char const *, NUMBER );
  • inline void set_variable( base::String const &, NUMBER );
  • int get_variable( NUMBER &, char const *, size_t len ) const;
  • inline int get_variable( NUMBER &, char const * ) const;
  • int get_variable_key( char const *, size_t len ) const;
  • int get_variable( NUMBER &, uint key ) const;
  • void remove_variable( char const * );
  • void remove_variables();
  • void clear();
  • void dump( std::ostream & ) const;
  • enum types;
  • struct element;
  • element( element const &a ) : _type(a._type), _id(a._id), _fn_argcount(a._fn_argcount), _id_base::String(a._id_base::String), _x(a._x);
    copy constructor
  • ~element();
    destructor
  • element &operator=( element const &a );
    assignment operator
  • return *this;
  • };
  • types _type;
  • uint _id;
  • uint _fn_argcount;
  • base::String _id_string;
  • NUMBER _x;
  • };
  • base::vector<element> _data;
  • base::vector<expr_variable<NUMBER> > _variable;
protected:
  • inline int find_variable( char const * ) const;
  • int find_variable( char const *, size_t ) const;
private:


template <class NUMBER> eval::expr_base GANG