CodeSnip Old Code (SVN)
A repository for source code snippets, designed with Pascal in mind.
Brought to you by:
delphidabbler
{TODO -oSelf -cRefactor : Merge the IO and UI manager code into WBController}
{TODO -oSelf -cFeature : Add parsing for standard user routine. Must start with procedure or function. Need to
parse. Grammar is:
<proc_proto> ::= "procedure" <ident> [<param_list>] ";" [<directives>]
<fn_proto> ::= "function" <ident> [<param_list>] ":" <ident> ";" [<directives>]
<param_list> ::= "(" <param_def> (*repeat ";" <param_def> *) ")"
<param_def> ::= <ident> [ ":" <ident> ]
<ident> ::= valid Pascal identifier
<directives> ::= <directive> (*repeat ";" <directive> *)
<directive> ::= "register" | "pascal" | "cdecl" | "stdcall" | "safecall" | "overload"
Parsing for consts and types for our purpose is simple:
<type-def> ::= "type" <definitions>
<const-def> ::= "const" <definitions>}