diff options
Diffstat (limited to 'src/boot/parser.boot')
-rw-r--r-- | src/boot/parser.boot | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/boot/parser.boot b/src/boot/parser.boot index 224121e7..771fade4 100644 --- a/src/boot/parser.boot +++ b/src/boot/parser.boot @@ -411,12 +411,27 @@ bpConstTok() == bpPush bfSymbol bpPop1() bpString() + +++ ExportItemList: +++ Signature +++ ExportItemList Signature +bpExportItemList() == + bpListAndRecover function bpSignature + +++ Exports: +++ pile-bracketed ExporItemList +bpExports() == + bpPileBracketed function bpExportItemList + ++ Parse a module definitoin ++ Module: ++ MODULE QUOTE String bpModule() == - bpEqKey "MODULE" and (bpName() or bpTrap()) and - bpPush %Module bpPop1() + bpEqKey "MODULE" => + bpName() or bpTrap() + bpEqKey "WHERE" => + bpExports() and bpPush %Module(bpPop2(), bpPop1()) + bpPush %Module(bpPop1(),nil) ++ Parse a module import, or a import declaration for a foreign entity. ++ Import: |