diff options
Diffstat (limited to 'src/boot/parser.boot')
-rw-r--r-- | src/boot/parser.boot | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/boot/parser.boot b/src/boot/parser.boot index 2ad0bac5..b881ffe2 100644 --- a/src/boot/parser.boot +++ b/src/boot/parser.boot @@ -458,8 +458,8 @@ bpModule() == ++ Parse a module import, or a import declaration for a foreign entity. ++ Import: -++ IMPORT Name for Signature -++ IMPORT QUOTE String +++ IMPORT Signature FOR Name +++ IMPORT Name bpImport() == bpEqKey "IMPORT" => a := bpState() @@ -498,12 +498,20 @@ bpSimpleMapping() == true false +++ ArgtypeList: +++ ( ArgtypeSequence ) +++ ArgtypeSequence: +++ Application +++ Application , ArgtypeSequence +bpArgtypeList() == + bpTuple function bpApplication + ++ Parse a mapping expression ++ Mapping: -++ (IdList) -> Application -++ SimpleMapping +++ ArgtypeList -> Application +++ SimpleMapping bpMapping() == - bpParenthesized function bpIdList and + bpParenthesized function bpArgtypeList and bpEqKey "ARROW" and bpApplication() and bpPush Mapping(bpPop1(), bfUntuple bpPop1()) or bpSimpleMapping() |