PreviousUpNext

15.3.12  src/app/makelib/freezefile/verify-freezefile.api

## verify-freezefile.api
## (C) 2000 Lucent Technologies, Bell Laboratories
## Author: Matthias Blume (blume@kurims.kyoto-u.ac.jp)

# Compiled by:
#     src/app/makelib/makelib.sublib



# Verifying the validity of an existing freezefile.
#
#   - This is used for "paranoia" mode during bootstrap compilation.
#     Normally, makelib accepts freezefiles and doesn't ask questions,
#     but during bootstrap compilation it takes the freezefile only
#     if it is verified to be valid.



stipulate
    package ad  =  anchor_dictionary;                                                           # anchor_dictionary                     is from   src/app/makelib/paths/anchor-dictionary.pkg
    package ftm =  frozenlib_tome_map;                                                          # frozenlib_tome_map                    is from   src/app/makelib/freezefile/frozenlib-tome-map.pkg
    package sg  =  intra_library_dependency_graph;                                              # intra_library_dependency_graph        is from   src/app/makelib/depend/intra-library-dependency-graph.pkg
    package lg  =  inter_library_dependency_graph;                                              # inter_library_dependency_graph        is from   src/app/makelib/depend/inter-library-dependency-graph.pkg
    package ms  =  makelib_state;                                                               # makelib_state                         is from   src/app/makelib/main/makelib-state.pkg
    package mvi =  makelib_version_intlist;                                                     # makelib_version_intlist               is from   src/app/makelib/stuff/makelib-version-intlist.pkg
    package sps =  source_path_set;                                                             # source_path_set                       is from   src/app/makelib/paths/source-path-set.pkg
herein

    # This api is implemented in:
    #     src/app/makelib/freezefile/verify-freezefile-g.pkg

    api Verify_Freezefile {
        #
        Exportmap =   ftm::Map( thawedlib_tome::Thawedlib_Tome );
        #
        verify' : ms::Makelib_State
                  ->
                  Exportmap
                  ->
                  ( ad::File,                                   # libfile 
                    List( sg::Tome_Tin ),                               # export_nodes 
                    List( lg::Library_Thunk ),                  # sublibraries 
                    sps::Set,                                   # freezefiles 
                    Null_Or( mvi::Makelib_Version_Intlist )
                  )
                  ->
                  Bool;

        verify:  ms::Makelib_State
                  -> Exportmap
                  -> lg::Inter_Library_Dependency_Graph
                  -> Bool;
    };

end;


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext