## Uses of Interface
org.eclipse.cdt.core.model.ICElement

Packages that use ICElement
org.eclipse.cdt.core.model

### Uses of ICElement in org.eclipse.cdt.core.model

Subinterfaces of ICElement in org.eclipse.cdt.core.model
`interface` `IArchive` An IArchive represents a group of files combined into a single file(the Archive), for example 'libXX.a'.
`interface` `IArchiveContainer` Represents a container of all the IArchive's found in the project while inspecting the project.
`interface` `IAsmLabel` Represents a label in assembly code.
`interface` `IBinary` Represents a Binary file, for example an ELF executable.
`interface` `IBinaryContainer` Represents a container of all the IBinary's found in the project while inspecting the project.
`interface` `IBinaryElement`
`interface` `IBinaryFunction` Represents a function.
`interface` `IBinaryModule`
`interface` `IBinaryVariable` Represents a global variable.
`interface` `ICContainer` A C folder resource.
`interface` `ICModel` Represent the root C element corresponding to the workspace.
`interface` `IContributedCElement` Additions to the `ICElement` hierarchy provided by contributed languages.
`interface` `ICProject` A C project represents a view of a project resource in terms of C elements such as , ICContainer, ITranslationUnit ....
`interface` `IDeclaration` Base interface for any C Model element that could be considered a declaration.
`interface` `IEnumeration` An Enumeration type.
`interface` `IEnumerator`
`interface` `IField` Represents a field(variable) declared in an IStructure(struct, class, union).
`interface` `IFunction` Represents a function definition.
`interface` `IFunctionDeclaration` Represents a function
`interface` `IFunctionTemplate` Function template definition.
`interface` `IFunctionTemplateDeclaration` Function template declaration.
`interface` `IInclude` Represents an include declaration in a C translation unit.
`interface` `IIncludeReference`
`interface` `ILibraryReference`
`interface` `IMacro` Represents a field declared in a type.
`interface` `IMember` Common protocol for C elements that can be members of types.
`interface` `IMethod` Represents the definition method of a class.
`interface` `IMethodDeclaration` Represents the declaration method of a class
`interface` `IMethodTemplate` Member template definition.
`interface` `IMethodTemplateDeclaration` Member template declaration.
`interface` `INamespace` Represents a package declaration in a C translation unit.
`interface` `ISourceRoot`
`interface` `IStructure` Represent struct(ure), class or union.
`interface` `IStructureDeclaration`
`interface` `IStructureTemplate` Class template definition.
`interface` `IStructureTemplateDeclaration` Class template declaration.
`interface` `ITranslationUnit` Represents an entire C translation unit (`.c` source file).
`interface` `ITypeDef` Represents a field declared in a type.
`interface` `IUsing` Represents a "using" declaration in C translation unit.
`interface` `IVariable` Represents a global variable.
`interface` `IVariableDeclaration` Represents the declaration of a variable.
`interface` `IWorkingCopy` A working copy of a C element acts just like a regular element (handle), except it is not attached to an underlying resource.

Fields in org.eclipse.cdt.core.model declared as ICElement
`static ICElement[]` ICElement.`EMPTY_ARRAY`

Methods in org.eclipse.cdt.core.model that return ICElement
`ICElement` CoreModel.`create(IFile file)` Creates an ICElement for an IFile.
`ICElement` CoreModel.`create(IPath path)` Creates an ICElement for an IPath.
`ICElement` CoreModel.`create(IResource resource)` Creates an ICElement for an IResource.
`ICElement` ICProject.`findElement(IPath path)` Returns the `ICElement` corresponding to the given path, or `null` if no such `ICElement` is found.
`ICElement` ICElement.`getAncestor(int ancestorType)` Returns the first ancestor of this C element that has the given type.
`ICElement[]` IParent.`getChildren()` Returns the immediate children of this element.
`ICElement` ICElementDelta.`getElement()` Returns the element that this delta describes a change to.
`ICElement` ITranslationUnit.`getElement(java.lang.String name)`
`ICElement` ITranslationUnit.`getElementAtLine(int line)` Returns the smallest element within this translation unit that includes the given source position (that is, a method, field, etc.), or `null` if there is no element other than the translation unit itself at the given position, or if the given position is not within the source range of this translation unit.
`ICElement` ITranslationUnit.`getElementAtOffset(int offset)` Returns the smallest element within this translation unit that includes the given source position (that is, a method, field, etc.), or `null` if there is no element other than the translation unit itself at the given position, or if the given position is not within the source range of this translation unit.
`ICElement[]` ICModelStatus.`getElements()` Returns any C elements associated with the failure (see specification of the status code), or an empty array if no elements are related to this particular status code.
`ICElement[]` IRegion.`getElements()` Returns the top level elements in this region.
`ICElement[]` ITranslationUnit.`getElementsAtOffset(int offset)` Returns the elements within this translation unit that includes the given source position (that is, a method, field, etc.), or an empty array if there are no elements other than the translation unit itself at the given position, or if the given position is not within the source range of this translation unit.
`ICElement` ICElementDelta.`getMovedFromElement()` Returns an element describing this element before it was moved to its current location, or `null` if the `F_MOVED_FROM` change flag is not set.
`ICElement` ICElementDelta.`getMovedToElement()` Returns an element describing this element in its new location, or `null` if the `F_MOVED_TO` change flag is not set.
`ICElement` IWorkingCopy.`getOriginal(ICElement workingCopyElement)` Returns the original element the specified working copy element was created from, or `null` if this is not a working copy element.
`ICElement` ICElement.`getParent()` Returns the element directly containing this element, or `null` if this element has no parent.

Methods in org.eclipse.cdt.core.model that return types with arguments of type ICElement
`java.util.List<ICElement>` IParent.`getChildrenOfType(int type)` returns the children of a certain type

Methods in org.eclipse.cdt.core.model with parameters of type ICElement
`void` IRegion.`add(ICElement element)` Adds the given element and all of its descendents to this region.
`boolean` IRegion.`contains(ICElement element)` Returns whether the given element is contained in this region.
`void` ICModel.`copy(ICElement[] elements, ICElement[] containers, ICElement[] siblings, java.lang.String[] renamings, boolean replace, IProgressMonitor monitor)` Copies the given elements to the specified container(s).
`void` ICModel.`copy(ICElement[] elements, ICElement[] containers, ICElement[] siblings, java.lang.String[] renamings, boolean replace, IProgressMonitor monitor)` Copies the given elements to the specified container(s).
`void` ICModel.`copy(ICElement[] elements, ICElement[] containers, ICElement[] siblings, java.lang.String[] renamings, boolean replace, IProgressMonitor monitor)` Copies the given elements to the specified container(s).
`void` ISourceManipulation.`copy(ICElement container, ICElement sibling, java.lang.String rename, boolean replace, IProgressMonitor monitor)` Copies this element to the given container.
`IInclude` ITranslationUnit.`createInclude(java.lang.String name, boolean isStd, ICElement sibling, IProgressMonitor monitor)` Creates and returns an include declaration in this translation unit with the given name.
`INamespace` ITranslationUnit.`createNamespace(java.lang.String namespace, ICElement sibling, IProgressMonitor monitor)` Creates and returns a namespace in this translation unit
`IUsing` ITranslationUnit.`createUsing(java.lang.String name, boolean isDirective, ICElement sibling, IProgressMonitor monitor)` Creates and returns a using declaration/directive in this translation unit.
`void` ICModel.`delete(ICElement[] elements, boolean force, IProgressMonitor monitor)` Deletes the given elements, forcing the operation if necessary and specified.
`ICElement` IWorkingCopy.`getOriginal(ICElement workingCopyElement)` Returns the original element the specified working copy element was created from, or `null` if this is not a working copy element.
`void` ICModel.`move(ICElement[] elements, ICElement[] containers, ICElement[] siblings, java.lang.String[] renamings, boolean replace, IProgressMonitor monitor)` Moves the given elements to the specified container(s).
`void` ICModel.`move(ICElement[] elements, ICElement[] containers, ICElement[] siblings, java.lang.String[] renamings, boolean replace, IProgressMonitor monitor)` Moves the given elements to the specified container(s).
`void` ICModel.`move(ICElement[] elements, ICElement[] containers, ICElement[] siblings, java.lang.String[] renamings, boolean replace, IProgressMonitor monitor)` Moves the given elements to the specified container(s).
`void` ISourceManipulation.`move(ICElement container, ICElement sibling, java.lang.String rename, boolean replace, IProgressMonitor monitor)` Moves this element to the given container.
`boolean` IRegion.`remove(ICElement element)` Removes the specified element from the region and returns `true` if successful, `false` if the remove fails.
`void` ICModel.`rename(ICElement[] elements, ICElement[] destinations, java.lang.String[] names, boolean replace, IProgressMonitor monitor)` Renames the given elements as specified.
`void` ICModel.`rename(ICElement[] elements, ICElement[] destinations, java.lang.String[] names, boolean replace, IProgressMonitor monitor)` Renames the given elements as specified.
`boolean` ICElementVisitor.`visit(ICElement element)` Visited a member if the ICElement tree.