PreviousUpNext

15.3.164  src/lib/compiler/back/low/tools/adl-syntax/adl-raw-syntax-unparser.api

# adl-raw-syntax-unparser.api

# Compiled by:
#     src/lib/compiler/back/low/tools/sml-ast.lib


stipulate
    package spp =  simple_prettyprinter;                        # simple_prettyprinter          is from   src/lib/prettyprint/simple/simple-prettyprinter.pkg
    package raw =  adl_raw_syntax_form;                         # adl_raw_syntax_form           is from   src/lib/compiler/back/low/tools/adl-syntax/adl-raw-syntax-form.pkg
herein

    # This api is implemented in:
    #     src/lib/compiler/back/low/tools/adl-syntax/adl-raw-syntax-unparser.pkg
    #
    api  Adl_Raw_Syntax_Unparser {
        #
        lowercase_ident:        raw::Ident              -> spp::Prettyprint_Expression;
        mixedcase_ident:        raw::Ident              -> spp::Prettyprint_Expression;
        uppercase_ident:        raw::Ident              -> spp::Prettyprint_Expression;
        literal:                raw::Literal            -> spp::Prettyprint_Expression;
        expression:             raw::Expression         -> spp::Prettyprint_Expression;
        label_expression: (raw::Id, raw::Expression)    -> spp::Prettyprint_Expression;
        sexp:                   raw::Package_Exp        -> spp::Prettyprint_Expression;
        api_expression:         raw::Api_Exp            -> spp::Prettyprint_Expression;
        pattern:                raw::Pattern            -> spp::Prettyprint_Expression;
        labpat:       (raw::Id, raw::Pattern)           -> spp::Prettyprint_Expression;
        type:                   raw::Type               -> spp::Prettyprint_Expression;
        labty:        (raw::Id, raw::Type)              -> spp::Prettyprint_Expression;
        decl:                   raw::Declaration        -> spp::Prettyprint_Expression;
        decls:            List( raw::Declaration )      -> spp::Prettyprint_Expression;
        named_value:            raw::Named_Value        -> spp::Prettyprint_Expression;
        named_values:     List( raw::Named_Value )      -> spp::Prettyprint_Expression;
        function_def:           raw::Fun                -> spp::Prettyprint_Expression;
        function_defs:    List( raw::Fun )              -> spp::Prettyprint_Expression;
        clause:                 raw::Clause             -> spp::Prettyprint_Expression;
        clauses:          List( raw::Clause )           -> spp::Prettyprint_Expression;
        consbind:               raw::Constructor        -> spp::Prettyprint_Expression;
        consbinds:        List( raw::Constructor )      -> spp::Prettyprint_Expression;
        typebind:               raw::Type_Alias         -> spp::Prettyprint_Expression;
        typebinds:        List( raw::Type_Alias )       -> spp::Prettyprint_Expression;

        typevar:                raw::Typevar_Ref        -> spp::Prettyprint_Expression;
        sumtype:                raw::Sumtype            -> spp::Prettyprint_Expression;
        sumtypes:         List( raw::Sumtype )          -> spp::Prettyprint_Expression;

        encode_name:    raw::Id -> raw::Id;
    };
end;


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext