Method cpp()
- Method cpp
string cpp(string data, mapping|string|void current_file, int|string|void charset, object|void handler, void|int compat_major, void|int compat_minor, void|int picky_cpp)
- Description
Run a string through the preprocessor.
Preprocesses the string data with Pike's builtin ANSI-C look-alike preprocessor. If the current_file argument has not been specified, it will default to
"-"
. charset defaults to"ISO-10646"
.If the second argument is a mapping, no other arguments may follow. Instead, they have to be given as members of the mapping (if wanted). The following members are recognized:
"current_file" : string Name of the current file. It is used for generating #line directives and for locating include files.
"charset" : int|string Charset to use when processing
data
."handler" : object Compilation handler.
"compat_major" : int Sets the major pike version used for compat handling.
"compat_minor" : int Sets the minor pike version used for compat handling.
"picky_cpp" : int Generate more warnings.
"keep_comments" : int This option keeps cpp() from removing comments. Useful in combination with the prefix feature below.
"prefix" : string If a prefix is given, only prefixed directives will be processed. For example, if the prefix is
"foo"
, then#foo_ifdef COND
andfoo___LINE__
would be processed,#ifdef COND
and__LINE__
would not.
- See also