Package org.eclipse.cdt.core.model

# Interface IMethodDeclaration

All Superinterfaces:
  `org.eclipse.core.runtime.IAdaptable`, `ICElement`, `IDeclaration`, `IFunctionDeclaration`, `IMember`, `ISourceManipulation`, `ISourceReference`

All Known Subinterfaces:
  `IMethod`, `IMethodTemplate`, `IMethodTemplateDeclaration`

public interface IMethodDeclaration extends IMember, IFunctionDeclaration
Represents the declaration method of a class

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 inherited from interface org.eclipse.cdt.core.model.ICElement

`ASM_LABEL, C_ARCHIVE, C_BINARY, C_CCONTAINER, C_CLASS, C_CLASS_CTOR, C_CLASS_DECLARATION, C_CLASS_DTOR, C_CONCEPT, C_DEDUCTION_GUIDE, C_DEDUCTION_GUIDE_TEMPLATE, C_ENUMERATION, C_ENUMERATOR, C_FIELD, C_FUNCTION, C_FUNCTION_DECLARATION, C_INCLUDE, C_MACRO, C_METHOD, C_METHOD_DECLARATION, C_MODEL, C_NAMESPACE, C_PRAGMA, C_PROJECT, C_STORAGE_EXTERN, C_STORAGE_STATIC, C_STRUCT, C_STRUCT_DECLARATION, C_TEMPLATE_CLASS, C_TEMPLATE_CLASS_DECLARATION, C_TEMPLATE_FUNCTION, C_TEMPLATE_FUNCTION_DECLARATION, C_TEMPLATE_METHOD, C_TEMPLATE_METHOD_DECLARATION, C_TEMPLATE_STRUCT, C_TEMPLATE_STRUCT_DECLARATION, C_TEMPLATE_UNION, C_TEMPLATE_UNION_DECLARATION, C_TEMPLATE_VARIABLE, C_TYPEDEF, C_UNION, C_UNION_DECLARATION, C_UNIT, C_UNKNOWN_DECLARATION, C_USING, C_VARIABLE, C_VARIABLE_DECLARATION, C_VARIABLE_LOCAL, C_VCONTAINER, CPP_FRIEND, CPP_PRIVATE, CPP_PROTECTED, CPP_PUBLIC, EMPTY_ARRAY`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`isConstructor()`
Returns whether this method is a constructor.
`boolean`
`isDestructor()`
Returns whether this method is a destructor.
`boolean`
`isFriend()`
return true if the member is a friend.
`boolean`
`isInline()`
Returns if this method is inline or not
`boolean`
`isOperator()`
Returns whether this method is an operator method.
`boolean`
`isPureVirtual()`
Returns whether this method is declared pure virtual.
`boolean`
`isStatic()`
Returns if this method is static or not
`boolean`
`isVirtual()`
Returns whether this method is declared virtual.

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

`getAdapter`

### Methods inherited from interface org.eclipse.cdt.core.model.ICElement

`accept, exists, getAncestor, getCModel, getCProject, getElementName, getElementType, getHandleIdentifier, getLocationURI, getParent, getPath, getResource, getUnderlyingResource, isReadOnly, isStructureKnown`

### Methods inherited from interface org.eclipse.cdt.core.model.IDeclaration

`isConst, isVolatile`

### Methods inherited from interface org.eclipse.cdt.core.model.IFunctionDeclaration

`getExceptions, getNumberOfParameters, getParameterInitializer, getParameterTypes, getReturnType, getSignature`

### Methods inherited from interface org.eclipse.cdt.core.model.IMember

`getVisibility`

### Methods inherited from interface org.eclipse.cdt.core.model.ISourceManipulation

`copy, delete, move, rename`

### Methods inherited from interface org.eclipse.cdt.core.model.ISourceReference

`getIndex, getSource, getSourceRange, getTranslationUnit, isActive`

## Method Details

### isConstructor

boolean isConstructor() throws CModelException
Returns whether this method is a constructor.

Throws:
  `CModelException` - if this element does not exist or if an exception occurs while accessing its corresponding resource.

### isDestructor

boolean isDestructor() throws CModelException
Returns whether this method is a destructor.

Throws:
  `CModelException` - if this element does not exist or if an exception occurs while accessing its corresponding resource.

### isOperator

boolean isOperator() throws CModelException
Returns whether this method is an operator method.

Throws:
  `CModelException` - if this element does not exist or if an exception occurs while accessing its corresponding resource.

### isPureVirtual

boolean isPureVirtual() throws CModelException
Returns whether this method is declared pure virtual.

For example, a source method declared as `virtual void m() = 0;`.

Throws:
  `CModelException` - if this element does not exist or if an exception occurs while accessing its corresponding resource.

### isStatic

boolean isStatic() throws CModelException
Returns if this method is static or not

Specified by:
  `isStatic` in interface `IDeclaration`
Returns:
  boolean
Throws:
  `CModelException`

### isInline

boolean isInline() throws CModelException
Returns if this method is inline or not

Returns:
  boolean
Throws:
  `CModelException`

### isVirtual

boolean isVirtual() throws CModelException
Returns whether this method is declared virtual.

Throws:
  `CModelException` - if this element does not exist or if an exception occurs while accessing its corresponding resource.

### isFriend

boolean isFriend() throws CModelException
return true if the member is a friend.

Throws:
  `CModelException`