1
/*******************************************************************************
2
* Copyright (c) 2004, 2009 IBM Corporation and others.
3
* All rights reserved. This program and the accompanying materials
4
* are made available under the terms of the Eclipse Public License v1.0
5
* which accompanies this distribution, and is available at
6
* http://www.eclipse.org/legal/epl-v10.html
9
* IBM - Initial API and implementation
10
* Markus Schorn (Wind River Systems)
11
*******************************************************************************/
12
package org.eclipse.cdt.core.dom.ast;
15
* This interface represent a preprocessor #include statement.
17
* @noextend This interface is not intended to be extended by clients.
18
* @noimplement This interface is not intended to be implemented by clients.
20
public interface IASTPreprocessorIncludeStatement extends
21
IASTPreprocessorStatement {
24
* <code>INCLUDE_NAME</code> describes the relationship between an include directive and
27
public static final ASTNodeProperty INCLUDE_NAME = new ASTNodeProperty(
28
"IASTPreprocessorMacroDefinition.INCLUDE_NAME - Include Name"); //$NON-NLS-1$
32
* Returns the absolute location of the file found through #include.
33
* Only valid if {@link #isResolved()} returns <code>true</code>.
35
public String getPath();
38
* Returns the name of the file as specified in the directive. Does not include quotes or
42
public IASTName getName();
45
* Returns whether this is a system include (one specified with angle brackets).
48
public boolean isSystemInclude();
51
* Returns whether this include directive was actually taken.
54
public boolean isActive();
57
* Returns whether this include file was successfully resolved.
60
public boolean isResolved();
63
* Returns whether the inclusion was resolved using a heuristics.
66
public boolean isResolvedByHeuristics();