org.eclipse.cdt.core.dom.ast.cpp

## Interface ICPPMethod

All Superinterfaces:
  org.eclipse.core.runtime.IAdaptable, IBinding, ICPPBinding, ICPPFunction, ICPPMember, IFunction

All Known Subinterfaces:
  ICPPConstructor, ICPPConstructorSpecialization, ICPPMethodSpecialization

    public interface ICPPMethod
    extends ICPPFunction, ICPPMember

Base interface for methods, also used for constructors.

Restriction:
  This interface is not intended to be implemented by clients.
Restriction:
  This interface is not intended to be extended by clients.

### Field Summary

Fields
`static ICPPMethod[]` `EMPTY_CPPMETHOD_ARRAY`

### Fields inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPMember

`v_private, v_protected, v_public`

### Fields inherited from interface org.eclipse.cdt.core.dom.ast.IBinding

`EMPTY_BINDING_ARRAY`

### Method Summary

All Methods Instance Methods Abstract Methods
`boolean` `isDestructor()` Is this a destructor? Returns true if its name starts with '~'
`boolean` `isExplicit()` Returns whether this is an explicit constructor or an explicit conversion operator.
`boolean` `isFinal()` Returns whether this method is declared final.
`boolean` `isImplicit()` Returns whether this is an implicit method (constructor, assignment operator, etc.)
`boolean` `isOverride()` Returns whether this method is declared override.
`boolean` `isPureVirtual()` Returns whether this is a pure abstract method
`boolean` `isVirtual()` Returns whether this method is declared to be virtual.

### Methods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPFunction

`getDeclaredType, getExceptionSpecification, getParameters, getRequiredArgumentCount, getType, hasParameterPack, isConstexpr, isDeleted, isExternC, isInline, isMutable`

### Methods inherited from interface org.eclipse.cdt.core.dom.ast.IFunction

`getFunctionScope, isAuto, isExtern, isNoReturn, isRegister, isStatic, takesVarArgs`

### Methods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPMember

`getClassOwner, getType, getVisibility, isStatic`

### Methods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPBinding

`getQualifiedName, getQualifiedNameCharArray, isGloballyQualified`

### Methods inherited from interface org.eclipse.cdt.core.dom.ast.IBinding

`getLinkage, getName, getNameCharArray, getOwner, getScope`

### Methods inherited from interface org.eclipse.core.runtime.IAdaptable

`getAdapter`

### Field Detail

#### EMPTY_CPPMETHOD_ARRAY

    static final ICPPMethod[] EMPTY_CPPMETHOD_ARRAY

### Method Detail

#### isVirtual

    boolean isVirtual()

Returns whether this method is declared to be virtual. Does not detect whether the method is virtual because of overriding a virtual method from a base class.

#### isDestructor

    boolean isDestructor()

Is this a destructor? Returns true if its name starts with '~'

#### isImplicit

    boolean isImplicit()

Returns whether this is an implicit method (constructor, assignment operator, etc.)

Since:
  4.0

#### isExplicit

    boolean isExplicit()

Returns whether this is an explicit constructor or an explicit conversion operator.

Since:
  5.3

#### isPureVirtual

    boolean isPureVirtual()

Returns whether this is a pure abstract method

Since:
  5.1

#### isOverride

    boolean isOverride()

Returns whether this method is declared override.

Since:
  5.5

#### isFinal

    boolean isFinal()

Returns whether this method is declared final.

Since:
  5.5