NaturalDocs::Languages::Pascal |
A subclass to handle the language variations of Pascal and Delphi.
NaturalDocs:: | A subclass to handle the language variations of Pascal and Delphi. |
Variables | |
prototypeDirectives | An existence hash of all the directives that can appear after a function prototype and will be included. |
longPrototypeDirectives | An existence hash of all the directives with parameters that can appear after a function prototype and will be included. |
checkingForDirectives | Set after the first function semicolon, which means we’re in directives mode. |
Functions | |
OnCode | Just overridden to reset checkingForDirectives. |
OnPrototypeEnd | Pascal’s syntax has directives after the prototype that should be included. |
ParseParameterLine | |
TypeBeforeParameter |
sub OnCode #( ... )
Just overridden to reset checkingForDirectives.
sub OnPrototypeEnd #( type, prototypeRef, ender )
Pascal’s syntax has directives after the prototype that should be included.
function MyFunction ( param1: type ); virtual; abstract;
type | The TopicType of the prototype. |
prototypeRef | A reference to the prototype so far, minus the ender in dispute. |
ender | The ender symbol. |
ENDER_ACCEPT | The ender is accepted and the prototype is finished. |
ENDER_IGNORE | The ender is rejected and parsing should continue. Note that the prototype will be rejected as a whole if all enders are ignored before reaching the end of the code. |
ENDER_ACCEPT_AND_CONTINUE | The ender is accepted so the prototype may stand as is. However, the prototype might also continue on so continue parsing. If there is no accepted ender between here and the end of the code this version will be accepted instead. |
ENDER_REVERT_TO_ACCEPTED | The expedition from ENDER_ACCEPT_AND_CONTINUE failed. Use the last accepted version and end parsing. |
An existence hash of all the directives that can appear after a function prototype and will be included.
my %prototypeDirectives
An existence hash of all the directives with parameters that can appear after a function prototype and will be included.
my %longPrototypeDirectives
Set after the first function semicolon, which means we’re in directives mode.
my $checkingForDirectives
Just overridden to reset checkingForDirectives.
sub OnCode #( ... )
Pascal’s syntax has directives after the prototype that should be included.
sub OnPrototypeEnd #( type, prototypeRef, ender )
sub ParseParameterLine #( ... )
sub TypeBeforeParameter