coan
6.0.1
A C/C++ Configuration Analyzer
|
struct hash_include
encapsulates an #include
directive.
More...
#include <hash_include.h>
Public Member Functions | |
hash_include (std::string const &arg) | |
Explicitly construct from the argument of an #include directive. More... | |
hash_include (chewer< parse_buffer > &chew) | |
Explicitly construct from the argument of an #include directive. More... | |
std::shared_ptr< reference > | symbolic_argument () const |
Say whether the body of an #include directive is a macro-reference. More... | |
std::string | filename () const |
Return the header file expression. More... | |
bool | system_header () const |
Test whether the #include specifies a system header, i.e. <headername> More... | |
bool | local_header () const |
Test whether the #include specifies a local header, i.e. "headername". More... | |
bool | valid () const |
Say whether the #include directive is valid. | |
void | report () |
Report the #include directive. | |
Private Member Functions | |
std::string | read (chewer< parse_buffer > &chew) |
Read the body of an #include directive. More... | |
Private Attributes | |
std::shared_ptr< reference > | _ref |
A pointer to the #include argument as a reference , if it one, else a null pointer. | |
directive< HASH_INCLUDE > | _directive |
The member handles reporting the #include directive. | |
struct hash_include
encapsulates an #include
directive.
Definition at line 50 of file hash_include.h.
|
inlineexplicit |
Explicitly construct from the argument of an #include
directive.
arg | The body of the #include directive |
Definition at line 58 of file hash_include.h.
|
inlineexplicit |
Explicitly construct from the argument of an #include
directive.
chew | On entry, a chewer<parse_buffer> positioned at the offset in the associated parse_buffer from which to scan. On returnchew is positioned to the first offset not consumed. |
Definition at line 67 of file hash_include.h.
|
inline |
Return the header file expression.
#include
is a macro-reference of a configured symbol then result of resolving that reference is returned. Otherwise the returned string is the same as returned by argument()
. Definition at line 88 of file hash_include.h.
|
inline |
Test whether the #include
specifies a local header, i.e. "headername".
#include
specifies a local header.system_header()
and local_header()
are not mutually exclusive, as a symbolic #include
argument may fail to resolve as either.
Definition at line 111 of file hash_include.h.
|
private |
Read the body of an #include
directive.
chew | On entry, a chewer<parse_buffer> positioned at the offset in the associated parse_buffer from which to scan. On returnchew is positioned to the first offset not consumed. |
Definition at line 63 of file hash_include.cpp.
|
inline |
Say whether the body of an #include
directive is a macro-reference.
Definition at line 77 of file hash_include.h.
|
inline |
Test whether the #include
specifies a system header, i.e. <headername>
#include
specifies a system header. Definition at line 98 of file hash_include.h.