## package-property-lists.pkg
## (C) 2001 Lucent Technologies, Bell Labs
# Compiled by:
#
src/lib/compiler/core.sublibstipulate
package di = debruijn_index; # debruijn_index is from
src/lib/compiler/front/typer/basics/debruijn-index.pkg package hcf = highcode_form; # highcode_form is from
src/lib/compiler/back/top/highcode/highcode-form.pkg package hut = highcode_uniq_types; # highcode_uniq_types is from
src/lib/compiler/back/top/highcode/highcode-uniq-types.pkg package mld = module_level_declarations; # module_level_declarations is from
src/lib/compiler/front/typer-stuff/modules/module-level-declarations.pkg package pl = property_list; # property_list is from
src/lib/src/property-list.pkg package sap = stamppath; # stamppath is from
src/lib/compiler/front/typer-stuff/modules/stamppath.pkg package tdt = type_declaration_types; # type_declaration_types is from
src/lib/compiler/front/typer-stuff/types/type-declaration-types.pkgherein
package package_property_lists {
my { get_fn => generics_expansion_lambdatype,
set_fn => set_generics_expansion_lty,
...
}
=
{ fun holder (e: mld::Typechecked_Package)
=
e.property_list;
fun init _
=
NULL: Null_Or( (hut::Uniqtypoid, di::Debruijn_Depth) );
pl::make_property (holder, init);
};
my { get_fn => typechecked_generic_lty,
set_fn => set_typechecked_generic_lty,
...
}
=
{ fun holder (e: mld::Typechecked_Generic)
=
e.property_list;
fun init _
=
NULL: Null_Or( (hut::Uniqtypoid, di::Debruijn_Depth) );
pl::make_property (holder, init);
};
my { get_fn => sig_lty,
set_fn => set_sig_lty,
...
}
=
{ fun holder (e: mld::Api_Record)
=
e.property_list;
fun init _
=
NULL: Null_Or( (hut::Uniqtypoid, di::Debruijn_Depth) );
pl::make_property (holder, init);
};
my { get_fn => api_bound_generic_evaluation_paths,
set_fn => set_api_bound_generic_evaluation_paths,
...
}
=
{ fun holder (e: mld::Api_Record)
=
e.property_list;
fun init _
=
NULL: Null_Or( List( (sap::Stamppath, hut::Uniqkind) ) );
pl::make_property (holder, init);
};
my { get_fn => dtf_ltyc,
set_fn => set_dtf_ltyc,
...
}
=
{ fun holder (f: tdt::Sumtype_Family)
=
f.property_list;
fun init _
=
NULL: Null_Or( (hut::Uniqtype, di::Debruijn_Depth) );
pl::make_property (holder, init);
};
};
end;