|
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.