/******************************************************************************* * Copyright (c) 2000, 2012 QNX Software Systems 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: * QNX Software Systems - Initial API and implementation * Anton Leherbauer (Wind River Systems) *******************************************************************************/ package org.eclipse.cdt.core.model; /** * Represents an include declaration in a C translation unit. * * @noextend This interface is not intended to be extended by clients. * @noimplement This interface is not intended to be implemented by clients. */ public interface IInclude extends ICElement, ISourceReference, ISourceManipulation { /** * Returns the name that of the included file. * For example, for the statement {@code #include <stdio.h>}, * this returns {@code "stdio.h"}. */ public String getIncludeName(); /** * Returns whether the included was search on "standard places" like /usr/include first . * An include is standard if it starts with {@code '<'}. * For example, {@code #include <stdio.h>} returns {@code true} and * {@code #include "foobar.h"} returns {@code false}. */ public boolean isStandard(); /** * The inverse of {@link #isStandard()} */ public boolean isLocal(); public String getFullFileName(); /** * @return whether this include directive was resolved and followed. */ boolean isResolved(); }