PreviousUpNext

14.4.50  Map_With_Implicit_Keys

The Map_With_Implicit_Keys api defines the external interface to the map_with_implicit_keys package.

The Map_With_Implicit_Keys api is implemented by the map_with_implicit_keys package.

The Map_With_Implicit_Keys api source code is src/lib/src/map-with-implicit-keys.api.

The above information is manually maintained and may contain errors.

api {   package key
          : api {
                Key;
                compare : (Key , Key) -> Order;};;
    Map X;
    empty : (X -> key::Key) -> Map(X );
    is_empty : Map(X ) -> Bool;
    singleton : (X , (X -> key::Key)) -> Map(X );
    set : (Map(X ) , X) -> Map(X );
    set' : (X , Map(X )) -> Map(X );
    $ : (Map(X ) , X) -> Map(X );
    get : (Map(X ) , key::Key) -> Null_Or(X );
    get_or_raise_exception_not_found : (Map(X ) , key::Key) -> X;
    contains_key : (Map(X ) , key::Key) -> Bool;
    get_and_drop : (Map(X ) , key::Key) -> (Map(X ) , Null_Or(X ));
    drop : (Map(X ) , key::Key) -> Map(X );
    first_val_else_null : Map(X ) -> Null_Or(X );
    first_keyval_else_null : Map(X ) -> Null_Or(((key::Key , X)) );
    last_val_else_null : Map(X ) -> Null_Or(X );
    last_keyval_else_null : Map(X ) -> Null_Or(((key::Key , X)) );
    vals_count : Map(X ) -> Int;
    vals_list : Map(X ) -> List(X );
    keyvals_list : Map(X ) -> List(((key::Key , X)) );
    keys_list : Map(X ) -> List(key::Key );
    compare_sequences : ((X , X) -> Order) -> (Map(X ) , Map(X )) -> Order;
    union_with : ((X , X) -> X) -> (Map(X ) , Map(X )) -> Map(X );
    keyed_union_with : ((key::Key , X , X) -> X) -> (Map(X ) , Map(X )) -> Map(X );
    intersect_with : ((Y , X) -> Y) -> (Map(Y ) , Map(X )) -> Map(Y );
    keyed_intersect_with : ((key::Key , Y , X) -> Y) -> (Map(Y ) , Map(X )) -> Map(Y );
    merge_with : ((Null_Or(Y ) , Null_Or(X )) -> Null_Or(Y )) -> (Map(Y ) , Map(X )) -> Map(Y );
        keyed_merge_with :
        ((key::Key , Null_Or(Y ) , Null_Or(X )) -> Null_Or(Y )) -> (Map(Y ) , Map(X )) -> Map(Y );
    apply : (X -> Void) -> Map(X ) -> Void;
    keyed_apply : ((key::Key , X) -> Void) -> Map(X ) -> Void;
    fold_forward : ((X , Y) -> Y) -> Y -> Map(X ) -> Y;
    keyed_fold_forward : ((key::Key , X , Y) -> Y) -> Y -> Map(X ) -> Y;
    fold_backward : ((X , Y) -> Y) -> Y -> Map(X ) -> Y;
    keyed_fold_backward : ((key::Key , X , Y) -> Y) -> Y -> Map(X ) -> Y;
    filter : (X -> Bool) -> Map(X ) -> Map(X );
    keyed_filter : ((key::Key , X) -> Bool) -> Map(X ) -> Map(X );
    all_invariants_hold : Map(X ) -> Bool;
    debug_print : (Map(X ) , (key::Key -> Void) , (X -> Void)) -> Int;};


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext