/******************************************************************************* * Copyright (c) 2008, 2014 Wind River Systems, Inc. and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Markus Schorn - initial API and implementation *******************************************************************************/ package org.eclipse.cdt.internal.core.pdom.dom; import org.eclipse.cdt.core.dom.ast.IASTFileLocation; import org.eclipse.cdt.core.index.IIndexFile; import org.eclipse.cdt.core.index.IIndexName; import org.eclipse.cdt.internal.core.index.IIndexFragment; import org.eclipse.cdt.internal.core.index.IIndexFragmentBinding; import org.eclipse.cdt.internal.core.index.IIndexFragmentName; import org.eclipse.core.runtime.CoreException; class PDOMMacroDefinitionName implements IIndexFragmentName { private final PDOMMacro fMacro; PDOMMacroDefinitionName(PDOMMacro macro) { fMacro = macro; } public PDOMMacro getMacro() { return fMacro; } @Override public boolean couldBePolymorphicMethodCall() throws CoreException { return false; } @Override public IIndexName[] getEnclosedNames() throws CoreException { return IIndexName.EMPTY_ARRAY; } @Override public IIndexName getEnclosingDefinition() throws CoreException { return null; } @Override public IIndexFile getFile() throws CoreException { return fMacro.getFile(); } @Override public int getNodeLength() { return fMacro.getNodeLength(); } @Override public int getNodeOffset() { return fMacro.getNodeOffset(); } @Override public boolean isBaseSpecifier() throws CoreException { return false; } @Override public boolean isReadAccess() throws CoreException { return false; } @Override public boolean isWriteAccess() throws CoreException { return false; } @Override public IASTFileLocation getFileLocation() { return fMacro; } @Override public boolean isDeclaration() { return false; } @Override public boolean isDefinition() { return true; } @Override public boolean isReference() { return false; } @Override public boolean isInlineNamespaceDefinition() { return false; } @Override @Deprecated public char[] toCharArray() { return fMacro.getNameCharArray(); } @Override public String toString() { return new String(getSimpleID()); } @Override public char[] getSimpleID() { return fMacro.getNameCharArray(); } @Override public IIndexFragmentBinding getBinding() { return fMacro; } @Override public IIndexFragment getIndexFragment() { return fMacro.getFragment(); } }