ACCELERATOR PHYSICS GROUP

Namespace Expressions

(Return to index)

Representation objects and parsers for attribute expressions.

Include file: ./Expressions/TFunction2.hh

Synopsis:

  • template <class> class AAutomatic ;
  • template <class,class> class ABinary ;
  • class AColumn ;
  • template <class> class ADeferred ;
  • template <class> class AList ;
  • template <class> class ARefAttr ;
  • template <class> class ARefExpr ;
  • class ARow ;
  • template <class> class ASUnary ;
  • class ATable ;
  • template <class,class> class AUnary ;
  • template <class> class AValue ;
  • template <class> class Array ;
  • template <class> class ArrayOfPtrs ;
  • template <class> class Indexer ;
  • template <class> class PtrToArray ;
  • template <class> class PtrToScalar ;
  • template <class> class SAutomatic ;
  • template <class,class> class SBinary ;
  • class SCell ;
  • template <class> class SConstant ;
  • template <class> class SDeferred ;
  • class SHash ;
  • template <class> class SNull ;
  • template <class> class SRefAttr ;
  • template <class> class SRefExpr ;
  • template <class,class> class SUnary ;
  • template <class> class SValue ;
  • template <class> class Scalar ;
  • template <class> struct TFunction0 ;
  • template <class,class> struct TFunction1 ;
  • template <class,class> struct TFunction2 ;
  • template <class> inline const T* find (const T[],const string&) ;
  • template <class> inline std::ostream& operator<< (std::ostream&,const ARefAttr<T>&) ;
  • template <class> inline std::ostream& operator<< (std::ostream&,const SRefAttr<T>&) ;
  • extern PtrToScalar<bool> parseBool (Statement&) ;
  • extern PtrToArray<bool> parseBoolArray (Statement&) ;
  • extern void parseDelimiter (Statement&,char) ;
  • extern void parseDelimiter (Statement&,const char[2]) ;
  • extern PlaceRep parsePlace (Statement&) ;
  • extern RangeRep parseRange (Statement&) ;
  • extern PtrToScalar<double> parseReal (Statement&) ;
  • extern PtrToArray<double> parseRealArray (Statement&) ;
  • extern double parseRealConst (Statement&) ;
  • extern PtrToArray<double> parseRealConstArray (Statement&) ;
  • extern SRefAttr<double>* parseReference (Statement&) ;
  • extern string parseString (Statement&,const char[]) ;
  • extern std::vector<string> parseStringArray (Statement&) ;
  • extern PtrToScalar<double> parseTableExpression (Statement&,const Table*) ;
  • extern TableRowRep parseTableRow (Statement&) ;
  • extern std::list<Token> parseTokenList (Statement&) ;
  • extern std::vector<std::list<Token> > parseTokenListArray (Statement&) ;

    Detailed descriptions:

    template <class> class AAutomatic ;
    Object attribute with an ``automatic'' array value.
    An automatic expression is marked as unknown and registered in a list when it is created. When its value is required, it is evaluated, and the value is cached. Whenever a new definition is read, or an existing one is changed, the expressions is marked as unknown. This forces a new evaluation when it is used the next time.

    template <class,class> class ABinary ;
    An array expression with two array operands.

    class AColumn ;
    An array expression defined as a table column.

    template <class> class ADeferred ;
    Object attribute with a ``deferred'' array value.
    An deferred expression is always re-evaluated when its value is required. This is notably needed to implement random generators.

    template <class> class AList ;
    An array expression defined by a list of scalar expressions.

    template <class> class ARefAttr ;
    An attribute defined as a reference to an array.
    The components of the array may be real, logical or string.

    template <class> class ARefExpr ;
    An expression defined as a reference to an array.
    The components of the array may be real, logical or string.

    class ARow ;
    An array expression defined as a table row.

    template <class> class ASUnary ;
    A scalar expression with one array operand.

    class ATable ;
    An array expression generated from a TABLE() function.
    This expression uses one or more AHash objects to represent the current index in the TABLE expression. These may retrieve the index from the ATable object by calling getHash().

    template <class,class> class AUnary ;
    An array expression with one array operand.

    template <class> class AValue ;
    Object attribute with a constant array value.

    template <class> class Array ;
    An array expression.

    template <class> class ArrayOfPtrs ;
    An array of pointers to scalar expressions.

    template <class> class Indexer ;
    A scalar expression used to retrieve an indexed component from an
    array.

    template <class> class PtrToArray ;
    A pointer to an array expression.

    template <class> class PtrToScalar ;
    A pointer to a scalar expression.

    template <class> class SAutomatic ;
    Object attribute with an ``automatic'' scalar value.
    An automatic expression is marked as unknown and registered in a list when it is created. When its value is required, it is evaluated, and the value is cached. Whenever a new definition is read, or an existing one is changed, the expressions is again marked as unknown. This forces a new evaluation when it is used the next time.

    template <class,class> class SBinary ;
    A scalar expression with two scalar operands.

    class SCell ;
    A scalar expression referring to a table cell.

    template <class> class SConstant ;
    A scalar constant expression.

    template <class> class SDeferred ;
    Object attribute with a ``deferred'' scalar value.
    An deferred expression is always re-evaluated when its value is required. This is notably needed to implement random generators.

    class SHash ;
    A scalar expression.
    Represents a ``#'' value in a TABLE() expression.

    template <class> class SNull ;
    A scalar expression without operands.

    template <class> class SRefAttr ;
    An attribute defined as a reference to a scalar.
    The referred attribute may have values of type real, logical or string.

    template <class> class SRefExpr ;
    An expression defined as a reference to a scalar.
    The referred attribute may have values of type real, logical or string.

    template <class,class> class SUnary ;
    A scalar expression with one scalar operand.

    template <class> class SValue ;
    Object attribute with a constant scalar value.

    template <class> class Scalar ;
    A scalar expression.

    template <class> struct TFunction0 ;
    An operand-less function returning a T.

    template <class,class> struct TFunction1 ;
    A function of one U, returning a T.

    template <class,class> struct TFunction2 ;
    A function of two U's returning a T.

    template <class> inline const T* find (const T[],const string&) ;
    Look up name.
    The input table is a C array of structures containing a name entry. The result is a pointer to one component of the array or NULL.

    extern PtrToScalar<bool> parseBool (Statement&) ;
    Parse boolean expression.

    extern PtrToArray<bool> parseBoolArray (Statement&) ;
    Parse boolean array expression.

    extern void parseDelimiter (Statement&,char) ;
    Test for one-character delimiter.

    extern void parseDelimiter (Statement&,const char[2]) ;
    Test for two-character delimiter.

    extern PlaceRep parsePlace (Statement&) ;
    Parse place specification.

    extern RangeRep parseRange (Statement&) ;
    Parse range specification.

    extern PtrToScalar<double> parseReal (Statement&) ;
    Parse real expression.

    extern PtrToArray<double> parseRealArray (Statement&) ;
    Parse real array expression.

    extern double parseRealConst (Statement&) ;
    Parse real constant.

    extern PtrToArray<double> parseRealConstArray (Statement&) ;
    Parse real array constant.

    extern SRefAttr<double>* parseReference (Statement&) ;
    Parse variable reference.

    extern string parseString (Statement&,const char[]) ;
    Parse string value.
    When no string is seen, a ParseError is thrown with the message given as the second argument.

    extern std::vector<string> parseStringArray (Statement&) ;
    Parse string array.

    extern PtrToScalar<double> parseTableExpression (Statement&,const Table*) ;
    Parse table expression (depends on a table's rows).

    extern TableRowRep parseTableRow (Statement&) ;
    Parse a token list (for macro argument and the like).

    extern std::list<Token> parseTokenList (Statement&) ;
    Parse a token list (for macro argument and the like).

    extern std::vector<std::list<Token> > parseTokenListArray (Statement&) ;
    Parse a token list array (for LIST commands).


    Documentation generated by fci on Mon Feb 7 12:30:15 2000