Class CaseStatement

java.lang.Object
de.fraunhofer.aisec.cpg.graph.Node
de.fraunhofer.aisec.cpg.graph.statements.Statement
de.fraunhofer.aisec.cpg.graph.statements.CaseStatement
All Implemented Interfaces:
DeclarationHolder, Persistable, IVisitable<de.fraunhofer.aisec.cpg.graph.Node>

public class CaseStatement
extends Statement
Case statement of the form case expression : that serves as entry point for switch statements, the only allowed substatements are side effekt free primitive expression for the selector to choose from. THe statements executed after the entry are on the same AST hierarchy in the parent compound statement.
  • Nested Class Summary

    Nested classes/interfaces inherited from class de.fraunhofer.aisec.cpg.graph.Node

    de.fraunhofer.aisec.cpg.graph.Node.Companion
  • Field Summary

    Fields
    Modifier and Type Field Description
    Expression caseExpression
    Primitive side effect free statement that has to match with the evaluated selector in SwitchStatement

    Fields inherited from class de.fraunhofer.aisec.cpg.graph.statements.Statement

    locals

    Fields inherited from class de.fraunhofer.aisec.cpg.graph.Node

    Companion, EMPTY_NAME, TO_STRING_STYLE
  • Constructor Summary

    Constructors
    Constructor Description
    CaseStatement()  
  • Method Summary

    Modifier and Type Method Description
    boolean equals​(java.lang.Object o)  
    Expression getCaseExpression()  
    int hashCode()  
    void setCaseExpression​(Expression caseExpression)  

    Methods inherited from class de.fraunhofer.aisec.cpg.graph.statements.Statement

    addDeclaration, getDeclarations, getLocals, getLocalsPropertyEdge, removeLocal, setLocals

    Methods inherited from class de.fraunhofer.aisec.cpg.graph.Node

    addAnnotations, addNextDFG, addNextEOG, addPrevDFG, addPrevEOG, addTypedef, clearNextEOG, disconnectFromGraph, getAnnotations, getArgumentIndex, getAstChildren, getCode, getComment, getFile, getId, getLocation, getName, getNextDFG, getNextEOG, getNextEOGEdges, getPrevDFG, getPrevEOG, getPrevEOGEdges, getTypedefs, isImplicit, isInferred, removeNextDFG, removePrevDFG, removePrevEOGEntry, setAnnotations, setArgumentIndex, setCode, setComment, setFile, setId, setImplicit, setInferred, setLocation, setName, setNextDFG, setNextEOG, setNextEOGEdges, setPrevDFG, setPrevEOG, setPrevEOGEdges, setTypedefs, toString

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface de.fraunhofer.aisec.cpg.graph.DeclarationHolder

    addIfNotContains, addIfNotContains, addIfNotContains

    Methods inherited from interface de.fraunhofer.aisec.cpg.processing.IVisitable

    accept
  • Field Details

    • caseExpression

      public Expression caseExpression
      Primitive side effect free statement that has to match with the evaluated selector in SwitchStatement
  • Constructor Details

    • CaseStatement

      public CaseStatement()
  • Method Details

    • getCaseExpression

      public Expression getCaseExpression()
    • setCaseExpression

      public void setCaseExpression​(Expression caseExpression)
    • equals

      public boolean equals​(java.lang.Object o)
      Overrides:
      equals in class Statement
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Statement