abc.aspectj.ast
Class TPEBinary_c

java.lang.Object
  extended by Node_c
      extended by abc.aspectj.ast.TypePatternExpr_c
          extended by abc.aspectj.ast.TPEBinary_c
All Implemented Interfaces:
TPEBinary, TypePatternExpr

public class TPEBinary_c
extends TypePatternExpr_c
implements TPEBinary

binary operation (&&,||) on type pattern exprs.

Author:
Oege de Moor, Aske Simon Christensen

Nested Class Summary
 
Nested classes/interfaces inherited from interface abc.aspectj.ast.TPEBinary
TPEBinary.Operator
 
Field Summary
protected  TypePatternExpr left
           
protected  TPEBinary.Operator op
           
protected  Precedence precedence
           
protected  TypePatternExpr right
           
 
Fields inherited from interface abc.aspectj.ast.TPEBinary
COND_AND, COND_OR
 
Constructor Summary
TPEBinary_c(Position pos, TypePatternExpr left, TPEBinary.Operator op, TypePatternExpr right)
           
 
Method Summary
 boolean equivalent(TypePatternExpr t)
           
 TypePatternExpr left()
           
 boolean matchesClass(PatternMatcher matcher, PCNode cl)
           
 boolean matchesClassArray(PatternMatcher matcher, PCNode cl, int dim)
           
 boolean matchesPrimitive(PatternMatcher matcher, java.lang.String prim)
           
 boolean matchesPrimitiveArray(PatternMatcher matcher, java.lang.String prim, int dim)
           
 TPEBinary.Operator op()
           
 void prettyPrint(CodeWriter w, PrettyPrinter tr)
           
protected  TPEBinary_c reconstruct(TypePatternExpr left, TypePatternExpr right)
           
 TypePatternExpr right()
           
 java.lang.String toString()
           
 ClassnamePatternExpr transformToClassnamePattern(AJNodeFactory nf)
           
 Node visitChildren(NodeVisitor v)
           
 
Methods inherited from class abc.aspectj.ast.TypePatternExpr_c
makeAITypePattern, precedence, printSubExpr
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface abc.aspectj.ast.TypePatternExpr
makeAITypePattern, precedence, printSubExpr
 

Field Detail

left

protected TypePatternExpr left

op

protected TPEBinary.Operator op

right

protected TypePatternExpr right

precedence

protected Precedence precedence
Constructor Detail

TPEBinary_c

public TPEBinary_c(Position pos,
                   TypePatternExpr left,
                   TPEBinary.Operator op,
                   TypePatternExpr right)
Method Detail

left

public TypePatternExpr left()
Specified by:
left in interface TPEBinary

right

public TypePatternExpr right()
Specified by:
right in interface TPEBinary

op

public TPEBinary.Operator op()
Specified by:
op in interface TPEBinary

reconstruct

protected TPEBinary_c reconstruct(TypePatternExpr left,
                                  TypePatternExpr right)

visitChildren

public Node visitChildren(NodeVisitor v)

prettyPrint

public void prettyPrint(CodeWriter w,
                        PrettyPrinter tr)

toString

public java.lang.String toString()

matchesClass

public boolean matchesClass(PatternMatcher matcher,
                            PCNode cl)
Specified by:
matchesClass in interface TypePatternExpr

matchesClassArray

public boolean matchesClassArray(PatternMatcher matcher,
                                 PCNode cl,
                                 int dim)
Specified by:
matchesClassArray in interface TypePatternExpr

matchesPrimitive

public boolean matchesPrimitive(PatternMatcher matcher,
                                java.lang.String prim)
Specified by:
matchesPrimitive in interface TypePatternExpr

matchesPrimitiveArray

public boolean matchesPrimitiveArray(PatternMatcher matcher,
                                     java.lang.String prim,
                                     int dim)
Specified by:
matchesPrimitiveArray in interface TypePatternExpr

transformToClassnamePattern

public ClassnamePatternExpr transformToClassnamePattern(AJNodeFactory nf)
                                                 throws SemanticException
Specified by:
transformToClassnamePattern in interface TypePatternExpr
Throws:
SemanticException

equivalent

public boolean equivalent(TypePatternExpr t)
Specified by:
equivalent in interface TypePatternExpr