abc.ltl.ast
Class PCFormula_c

java.lang.Object
  extended by Node_c
      extended by abc.aspectj.ast.Pointcut_c
          extended by abc.ltl.ast.PCFormula_c
All Implemented Interfaces:
Pointcut, PCFormula

public class PCFormula_c
extends Pointcut_c
implements PCFormula


Field Summary
protected  ByteCodePosition byteCodePosition
           
protected  java.util.Collection<Formal> formals
           
protected  PCLTLGeneral innerPc
           
protected  java.lang.String originalFormulaAsString
           
protected  java.util.Map<Pointcut,java.lang.Integer> propToId
           
 
Fields inherited from class abc.aspectj.ast.Pointcut_c
initialised
 
Constructor Summary
PCFormula_c(java.util.Collection<Formal> formals, PCLTLGeneral innerPc, ByteCodePosition byteCodePosition)
           
 
Method Summary
 java.util.List acceptCFG(CFGBuilder v, java.util.List succs)
          
 Term entry()
          
 Expr formulaConstructorExpr(PropositionLabels vis, Position pos)
          
 ByteCodePosition getByteCodePosition()
           
 java.util.Collection<Formal> getFormals()
           
 PCLTLGeneral getInnerPc()
           
 boolean isDynamic()
           
 boolean isPrepareForMultiThreading()
          
 Pointcut makeAIPointcut()
           
 java.util.Set pcRefs()
           
 void prettyPrint(CodeWriter w, PrettyPrinter pp)
           
 void printFormals(CodeWriter w, PrettyPrinter pp)
          Prints the formals declaration.
 java.lang.String propositionLabel(Pointcut pc)
           
 boolean reachable()
          
 Term reachable(boolean reachability)
          
protected  Node reconstruct(Node n, PCLTLGeneral innerPc)
           
 void setPropositionIds(java.util.Map<Pointcut,java.lang.Integer> propToId)
          
 Node visitChildren(NodeVisitor v)
          
 
Methods inherited from class abc.aspectj.ast.Pointcut_c
checkFormals, mayBind, mustBind, precedence, printSubExpr
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface abc.aspectj.ast.Pointcut
checkFormals, mayBind, mustBind, precedence, printSubExpr
 

Field Detail

formals

protected java.util.Collection<Formal> formals

innerPc

protected PCLTLGeneral innerPc

originalFormulaAsString

protected java.lang.String originalFormulaAsString

byteCodePosition

protected ByteCodePosition byteCodePosition

propToId

protected java.util.Map<Pointcut,java.lang.Integer> propToId
Constructor Detail

PCFormula_c

public PCFormula_c(java.util.Collection<Formal> formals,
                   PCLTLGeneral innerPc,
                   ByteCodePosition byteCodePosition)
Method Detail

visitChildren

public Node visitChildren(NodeVisitor v)


reconstruct

protected Node reconstruct(Node n,
                           PCLTLGeneral innerPc)

printFormals

public void printFormals(CodeWriter w,
                         PrettyPrinter pp)
Prints the formals declaration.

Parameters:
w - CodeWriter to print to
pp - PrettyPrinter to format with

prettyPrint

public void prettyPrint(CodeWriter w,
                        PrettyPrinter pp)

isDynamic

public boolean isDynamic()
Specified by:
isDynamic in interface Pointcut

makeAIPointcut

public Pointcut makeAIPointcut()
Specified by:
makeAIPointcut in interface Pointcut

pcRefs

public java.util.Set pcRefs()
Specified by:
pcRefs in interface Pointcut

getFormals

public java.util.Collection<Formal> getFormals()
Specified by:
getFormals in interface PCFormula

getInnerPc

public PCLTLGeneral getInnerPc()
Specified by:
getInnerPc in interface PCFormula

entry

public Term entry()


acceptCFG

public java.util.List acceptCFG(CFGBuilder v,
                                java.util.List succs)


reachable

public boolean reachable()


reachable

public Term reachable(boolean reachability)


getByteCodePosition

public ByteCodePosition getByteCodePosition()
Specified by:
getByteCodePosition in interface PCFormula

formulaConstructorExpr

public Expr formulaConstructorExpr(PropositionLabels vis,
                                   Position pos)

Specified by:
formulaConstructorExpr in interface PCFormula

setPropositionIds

public void setPropositionIds(java.util.Map<Pointcut,java.lang.Integer> propToId)

Specified by:
setPropositionIds in interface PCFormula

propositionLabel

public java.lang.String propositionLabel(Pointcut pc)
Specified by:
propositionLabel in interface PCFormula
Parameters:
pc -
Returns:

isPrepareForMultiThreading

public boolean isPrepareForMultiThreading()

Specified by:
isPrepareForMultiThreading in interface PCFormula