CsAsIsExpression Struct Reference

As or is expression AST node. More...

Inheritance diagram for CsAsIsExpression:

CsExpression CsNode

List of all members.

Public Member Functions

 CsAsIsExpression ()
 CsAsIsExpression (CsExpression *expression_, CsTokenType oper_, CsTypeRef *type_)
 CsAsIsExpression (LineInfo line_info)
 CsAsIsExpression (LineInfo line_info, CsExpression *expression_, CsTokenType oper_)
virtual ~CsAsIsExpression ()
virtual void build_entities (CsDisplay &display)
 Build Entities - pass 2 (for internal purpose only).
virtual void type_lookup (CsDisplay &display)
 Type Lookup - pass 3 (for internal purpose only).
virtual void member_lookup (CsDisplay &display)
 Member Lookup - pass 4 (for internal purpose only).
virtual void addTokensRecursive (CsTokenCollector &tokenCollector)
 Recusively collect token indexes in source code order.
virtual void addTokens (CsTokenCollector &tokenCollector)
 Collect token indexes associated with this AST node.
virtual void addEntityDefinitions (CsEntityCollector &tokenCollector)
 Collect entities defined in this AST node.
virtual void addEntityReferences (CsEntityCollector &tokenCollector)
 Collect entity references.
virtual void clearEntities ()
 Clear all entity references (for internal purpose only).

Public Attributes

CsExpressionexpression
 Expression.
CsTokenType oper
 as (tkAS) or is (tkIS) operator.
CsTypeReftype
 Target type.
CsTokenIndex as_is_token


Detailed Description

As or is expression AST node.

EBNF grammar:

as-is-expression:
  expression "as" type
  expression "is" type


Constructor & Destructor Documentation

CsAsIsExpression::CsAsIsExpression (  )  [inline]

CsAsIsExpression::CsAsIsExpression ( CsExpression expression_,
CsTokenType  oper_,
CsTypeRef type_ 
) [inline]

CsAsIsExpression::CsAsIsExpression ( LineInfo  line_info  )  [inline, explicit]

CsAsIsExpression::CsAsIsExpression ( LineInfo  line_info,
CsExpression expression_,
CsTokenType  oper_ 
) [inline]

virtual CsAsIsExpression::~CsAsIsExpression (  )  [inline, virtual]


Member Function Documentation

virtual void CsAsIsExpression::build_entities ( CsDisplay &  display  )  [inline, virtual]

Build Entities - pass 2 (for internal purpose only).

Reimplemented from CsExpression.

virtual void CsAsIsExpression::type_lookup ( CsDisplay &  display  )  [virtual]

Type Lookup - pass 3 (for internal purpose only).

Implements CsNode.

virtual void CsAsIsExpression::member_lookup ( CsDisplay &  display  )  [virtual]

Member Lookup - pass 4 (for internal purpose only).

Implements CsNode.

virtual void CsAsIsExpression::addTokensRecursive ( CsTokenCollector tokenCollector  )  [virtual]

Recusively collect token indexes in source code order.

Implements CsNode.

virtual void CsAsIsExpression::addTokens ( CsTokenCollector tokenCollector  )  [virtual]

Collect token indexes associated with this AST node.

Implements CsNode.

virtual void CsAsIsExpression::addEntityDefinitions ( CsEntityCollector tokenCollector  )  [inline, virtual]

Collect entities defined in this AST node.

Reimplemented from CsExpression.

virtual void CsAsIsExpression::addEntityReferences ( CsEntityCollector tokenCollector  )  [inline, virtual]

Collect entity references.

Reimplemented from CsExpression.

virtual void CsAsIsExpression::clearEntities (  )  [virtual]

Clear all entity references (for internal purpose only).

Reimplemented from CsExpression.


Member Data Documentation

as (tkAS) or is (tkIS) operator.

© 2008 metaspec