Known Direct Subclasses
  
      
          
            
              Assign,
            
               BeanReference,
            
               CompoundExpression,
            
               ConstructorReference,
            
               Elvis,
            
               FunctionReference,
            
               Identifier,
            
               Indexer,
            
               InlineList,
            
               Literal,
            
               MethodReference,
            
               Operator,
            
               OperatorNot,
            
               Projection,
            
               PropertyOrFieldReference,
            
               QualifiedIdentifier,
            
               Selection,
            
               Ternary,
            
               TypeReference,
            
               VariableReference
            
          
       
      
  
        
              | Assign | 
              Represents assignment.  | 
           
        
              | BeanReference | 
              Represents a bean reference to a type, for example "@foo" or "@'foo.bar'"  | 
           
        
              | CompoundExpression | 
              Represents a DOT separated expression sequence, such as 'property1.property2.methodOne()'  | 
           
        
              | ConstructorReference | 
              Represents the invocation of a constructor.  | 
           
        
              | Elvis | 
              Represents the elvis operator ?:.  | 
           
        
              | FunctionReference | 
              A function reference is of the form "#someFunction(a,b,c)".  | 
           
        
              | Identifier | 
                | 
           
        
              | Indexer | 
              An Indexer can index into some proceeding structure to access a particular piece of it.  | 
           
        
              | InlineList | 
              Represent a list in an expression, e.g.  | 
           
        
              | Literal | 
              Common superclass for nodes representing literals (boolean, string, number, etc).  | 
           
        
              | MethodReference | 
                | 
           
        
              | Operator | 
              Common supertype for operators that operate on either one or two operands.  | 
           
        
              | OperatorNot | 
              Represents a NOT operation.  | 
           
        
              | Projection | 
              Represents projection, where a given operation is performed on all elements in some input sequence, returning 
 a new sequence of the same size.  | 
           
        
              | PropertyOrFieldReference | 
              Represents a simple property or field reference.  | 
           
        
              | QualifiedIdentifier | 
              Represents a dot separated sequence of strings that indicate a package qualified type reference.  | 
           
        
              | Selection | 
              Represents selection over a map or collection.  | 
           
        
              | Ternary | 
              Represents a ternary expression, for example: "someCheck()?true:false".  | 
           
        
              | TypeReference | 
              Represents a reference to a type, for example "T(String)" or "T(com.somewhere.Foo)"  | 
           
        
              | VariableReference | 
              Represents a variable reference, eg.  | 
           
   
       
   
 |