Interface IFunction

All Superinterfaces:
org.eclipse.core.runtime.IAdaptable, IBinding
All Known Subinterfaces:
ICPPConstructor, ICPPConstructorSpecialization, ICPPDeferredFunction, ICPPFunction, ICPPFunctionInstance, ICPPFunctionSpecialization, ICPPFunctionTemplate, ICPPMethod, ICPPMethodSpecialization

public interface IFunction extends IBinding
This represents a function in the program. A function is also a scope for other bindings.
Restriction:
This interface is not intended to be implemented by clients.
Restriction:
This interface is not intended to be extended by clients.
  • Method Details

    • getParameters

      IParameter[] getParameters()
      Returns the formal parameters of the function.
    • getFunctionScope

      IScope getFunctionScope()
      Returns the function scope
    • getType

      IFunctionType getType()
      Returns the IFunctionType for this function
    • isStatic

      boolean isStatic()
      Returns true if the function has the static storage-class specifier similarly for extern, auto, register.
    • isExtern

      boolean isExtern()
    • isAuto

      boolean isAuto()
    • isRegister

      boolean isRegister()
    • isInline

      boolean isInline()
      Returns true if the function is inline.
    • takesVarArgs

      boolean takesVarArgs()
      Returns true if this function takes variable arguments.
    • isNoReturn

      boolean isNoReturn()
      Returns true if this function never returns. Based on 'noreturn' attribute in the function declaration.
      Since:
      5.4
    • isNoDiscard

      boolean isNoDiscard()
      Returns true if return value of this function must not be discarded. Based on 'nodiscard' attribute in the function declaration or in C using the flag 'warn_unused_result'
      Since:
      7.0