All Superinterfaces:
ICElement, ICExpression, ICLeftExpression

@Ser public interface ICIdentifier extends ICLeftExpression
C AST interface to represent an identifier, or variable.

Example:

 int someVariable = 3;
     ^^^^^^^^^^^^
 
C variable.

Refer to CIdentifierClass for the different types of identifiers.

  • Field Details

  • Method Details

    • getId

      int getId()
      Get a unique identifier associated with the identifier.
    • getType

      ICType getType()
      Get the identifier type.
    • getOriginalName

      String getOriginalName()
      Get the original name given to the identifier.
    • getName

      String getName()
      Get the current name given to the identifier.
    • setName

      boolean setName(String name)
      Parameters:
      name -
      Returns:
    • setName

      boolean setName(String name, IDynamicContentManager dcm)
      Parameters:
      name -
      dcm -
      Returns:
    • getIdentifierClass

      CIdentifierClass getIdentifierClass()
      Get the identifier class.
    • getMethodIndex

      Integer getMethodIndex()
      Returns:
    • getParameterIndex

      Integer getParameterIndex()
      Returns:
    • getAddress

      Long getAddress()
      Get the native address associated with this identifier.

      The address depends of the CIdentifierClass of the identifier:

    • getFlags

      int getFlags()
      Returns:
    • setFlags

      void setFlags(int flags)
      Parameters:
      flags -
    • isParameter

      default boolean isParameter()
    • generate

      void generate(COutputSink out, boolean definition)
    • duplicate

      ICIdentifier duplicate()
      Description copied from interface: ICElement
      Deep duplication of the element. Sub-elements are duplicated.

      Note: ICClass, ICMethod, ICField, ICIdentifier, ICConstant, ICType and ICLabel are not duplicated.

      Specified by:
      duplicate in interface ICElement
      Specified by:
      duplicate in interface ICExpression
      Specified by:
      duplicate in interface ICLeftExpression