PragmaHandler¶
-
exception
cpip.core.PragmaHandler.ExceptionPragmaHandler¶ Simple specialisation of an exception class for the PragmaHandler. If raised this will cause the PpLexer to register undefined behaviour.
-
exception
cpip.core.PragmaHandler.ExceptionPragmaHandlerStopParsing¶ Exception class for the PragmaHandler to stop parsing token stream.
-
class
cpip.core.PragmaHandler.PragmaHandlerABC¶ Abstract base class for a pragma handler.
-
isLiteral¶ Treat the result of pragma() literally so no further processing required.
-
pragma(theTokS)¶ Takes a list of PpTokens, processes then and should return a newline terminated string that will be preprocessed in the current environment.
-
replaceTokens¶ An boolean attribute that says whether the supplied tokens should be macro replaced before being passed to self.
-
-
class
cpip.core.PragmaHandler.PragmaHandlerEcho¶ A pragma handler that retains the #pragma line verbatim.
-
isLiteral¶ This class is just going to echo the line back complete with the ‘#pragma’ prefix. If the PpLexer re-interpreted this it would be an infinite loop.
-
pragma(theTokS)¶ Consume and return.
-
replaceTokens¶ Tokens do not require macro replacement.
-
-
class
cpip.core.PragmaHandler.PragmaHandlerNull¶ A pragma handler that does nothing.
-
pragma(theTokS)¶ Consume and return.
-
replaceTokens¶ Tokens do not require macro replacement.
-
-
class
cpip.core.PragmaHandler.PragmaHandlerSTDC¶ Base class for a pragma handler that implements ISO/IEC 9899:1999 (E) 6.10.5 Error directive para. 2.
-
DIRECTIVES= ('FP_CONTRACT', 'FENV_ACCESS', 'CX_LIMITED_RANGE')¶ Standard C acceptable macro directives
-
ON_OFF_SWITCH_STATES= ('ON', 'OFF', 'DEFAULT')¶ Standard C macro states
-
STDC= 'STDC'¶ Standard C macro
-
pragma(theTokS)¶ Inject a macro declaration into the environment.
See ISO/IEC 9899:1999 (E) 6.10.5 Error directive para. 2.
-
replaceTokens¶ STDC lines do not require macro replacement.
-