Class SwitchStatement

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

public class SwitchStatement
extends Statement
Represents a Java or C++ switch statement of the switch (selector) {...} that can include case and default statements. Break statements break out of the switch and labeled breaks in JAva are handled properly.
  • 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 selector
    Selector that determines the case/default statement of the subsequent execution

    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
    SwitchStatement()  
  • Method Summary

    Modifier and Type Method Description
    boolean equals​(java.lang.Object o)  
    Statement getInitializerStatement()  
    Expression getSelector()  
    Declaration getSelectorDeclaration()  
    Statement getStatement()  
    int hashCode()  
    void setInitializerStatement​(Statement initializerStatement)  
    void setSelector​(Expression selector)  
    void setSelectorDeclaration​(Declaration selectorDeclaration)  
    void setStatement​(Statement statement)  

    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, 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

    • selector

      public Expression selector
      Selector that determines the case/default statement of the subsequent execution
  • Constructor Details

    • SwitchStatement

      public SwitchStatement()
  • Method Details

    • getInitializerStatement

      public Statement getInitializerStatement()
    • setInitializerStatement

      public void setInitializerStatement​(Statement initializerStatement)
    • getSelectorDeclaration

      public Declaration getSelectorDeclaration()
    • setSelectorDeclaration

      public void setSelectorDeclaration​(Declaration selectorDeclaration)
    • getSelector

      public Expression getSelector()
    • setSelector

      public void setSelector​(Expression selector)
    • getStatement

      public Statement getStatement()
    • setStatement

      public void setStatement​(Statement statement)
    • equals

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

      public int hashCode()
      Overrides:
      hashCode in class Statement