All Superinterfaces:
ICElement, ICExpression
All Known Subinterfaces:
ICConstantFloat<T>, ICConstantFloat32, ICConstantFloat64, ICConstantInteger<T>, ICConstantInteger32, ICConstantInteger64, ICConstantIntegerLarge, ICConstantPointer, ICConstantString

@Ser public interface ICConstant<T> extends ICExpression
Top-level C AST interface to represent a literal or constant value. Constants represent immutable numbers and strings. Refer to the sub-interfaces. Constant objects are created and retrieved by a factory.
  • Method Details

    • getValue

      T getValue()
    • getType

      ICType getType()
    • isTrueLike

      boolean isTrueLike()
    • setOrigin

      void setOrigin(String origin)
    • getOrigin

      String getOrigin()
    • duplicate

      ICConstant<T> duplicate()
      This method returns the object itself: constants are generally immutable and do not need to be duplicated in the general case. However, if they need to be duplicated, you may use the method duplicate2, if the interface offers it.
      Specified by:
      duplicate in interface ICElement
      Specified by:
      duplicate in interface ICExpression