The standard library Note api defines access to functionality which allows arbitrary values to be stored in a List using the extensible Exception type.
The Note api is implemented by the note package.
The Note api source code is in src/lib/src/note.api.
The above information is manually maintained and may contain errors.
api { Note; Notes = List(Note ); exception NO_NOTE_FOUND; Notekind X = {get:Notes -> Null_Or(X ), is_in:Notes -> Bool, lookup:Notes -> X, peek:Note -> Null_Or(X ), rmv:Notes -> Notes, set:(X , Notes) -> Notes, x_to_note:X -> Note}; Flag = Notekind(Void ); make_notekind : Null_Or((X -> String) ) -> Notekind(X ); make_notekind' : {get:Exception -> X, to_string:X -> String, x_to_note:X -> Exception} -> Notekind(X ); to_string : Note -> String; attach_prettyprinter : (Note -> String) -> Void;};