PreviousUpNext

15.3.199  src/lib/compiler/back/low/treecode/treecode-hashing-equality-and-display.api

## treecode-hashing-equality-and-display.api -- derived from ~/src/sml/nj/smlnj-110.58/new/new/src/MLRISC/mltree/mltree-utils.sig 
#
# Common operations on Treecode. 
# -- Allen Leung 
#
#     "basic hashing, equality and pretty printing functions,"
#           -- http://www.cs.nyu.edu/leunga/MLRISC/Doc/html/mltree-util.html
#
#

# Compiled by:
#     src/lib/compiler/back/low/lib/treecode.lib


# Compiled by:
#     src/lib/compiler/back/low/lib/treecode.lib

###               "Let others praise ancient times;
###                I am glad I was born in these."
###
###                         -- Ovid (43 BC - AD 18)


# This api implemented in:
#     src/lib/compiler/back/low/treecode/treecode-hashing-equality-and-display-g.pkg
#
api Treecode_Hashing_Equality_And_Display {
    #
    package tcf:           Treecode_Form;

    # Hashing:
    #
    hash_void_expression:       tcf::Void_Expression    -> Unt;
    hash_int_expression:        tcf::Int_Expression     -> Unt;
    hash_float_expression:      tcf::Float_Expression   -> Unt;
    hash_flag_expression:       tcf::Flag_Expression  -> Unt;                                           # flag expressions are zero/parity/overflow/... flags stuff.


    # Equality:
    #
    same_void_expression:       (tcf::Void_Expression,  tcf::Void_Expression    ) -> Bool;
    same_int_expression:        (tcf::Int_Expression,   tcf::Int_Expression     ) -> Bool;
    same_float_expression:      (tcf::Float_Expression, tcf::Float_Expression   ) -> Bool;
    same_flag_expression:       (tcf::Flag_Expression,  tcf::Flag_Expression    ) -> Bool;
    same_expressionlists:       (List(tcf::Expression), List(tcf::Expression)   ) -> Bool;


    # Pretty printing:
    #
    show:  { def:         Int -> String, 
             uses:        Int -> String,
             #  
             region_def:  tcf::rgn::Ramregion -> String,
             region_use:  tcf::rgn::Ramregion -> String
           }
           ->
           tcf::Prettyprint_Fns;  

     void_expression_to_string: tcf::Void_Expression    -> String;
      int_expression_to_string: tcf::Int_Expression     -> String;
    float_expression_to_string: tcf::Float_Expression   -> String;
     flag_expression_to_string: tcf::Flag_Expression    -> String;      # Was ccexpToString in SMLNJ/MLRISC;
};

## Changes by Jeff Prothero Copyright (c) 2010-2015,
## released per terms of SMLNJ-COPYRIGHT.


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext