Module dev.civl.abc

Interface TypedefDeclarationNode

All Superinterfaces:
ASTNode, BlockItemNode, DeclarationNode

public interface TypedefDeclarationNode extends DeclarationNode, BlockItemNode
A node representing a typedef declaration. The identifier node in this declaration is the name of the typedef. The other child is a type node, which is the type being assigned to that identifier.
  • Method Details

    • getEntity

      Typedef getEntity()
      Returns the typedef entity itself associated to this declaration.
      Specified by:
      getEntity in interface DeclarationNode
      Returns:
      the typedef
      See Also:
    • getTypeNode

      TypeNode getTypeNode()
      Returns the AST node for the type that is being associated to the typedef name.
      Returns:
      the type assigned to this typedef name
    • setTypeNode

      void setTypeNode(TypeNode type)
      Sets the type node child of this typedef declaration node.
      Parameters:
      type - the type node to be made a child of this node
    • copy

      Description copied from interface: ASTNode
      Returns a deep copy of this AST node. The node and all of its descendants will be cloned. The cloning does not copy analysis or attribute information.
      Specified by:
      copy in interface ASTNode
      Specified by:
      copy in interface BlockItemNode
      Specified by:
      copy in interface DeclarationNode
      Returns:
      deep copy of this node