Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Source file fragment_trie_intf.ml
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295open!CoremoduletypeLocation=sigtypet[@@derivingbin_io,sexp,equal]includeHashable.Swithtypet:=tvaldummy:tmoduleDebug:sigtypenonrect=t[@@derivingsexp_of]endendmoduletypeEntry=sigtypet[@@derivingbin_io,sexp]moduleDebug:sigtypenonrect=t[@@derivingsexp_of]endendmoduletypeMetadata=sigtypet[@@derivingbin_io,sexp]endmoduletypeSuffix_tree=sigtypelocationtypeentrymoduleNode:sigmoduleId:sigtypetincludeHashable.Swithtypet:=tincludeSexpable.Swithtypet:=tendtypetvalid:t->Id.tvalentry:t->entryvalincoming_edge:t->locationvalsuffix:t->toptionvalchildren:t->(location,t)List.Assoc.tvalrepresentative:t->tmoduleDebug:sigtypenonrect=t[@@derivingsexp_of]endendtypetvalroot:t->Node.tendmoduletypeBacktrace=sigmoduleLocation:Location(** A backtrace, represented from toplevel to allocation site **)typet=Location.tlist[@@derivingsexp,bin_io,compare,hash]includeComparable.Swithtypet:=tmoduleDebug:sigtypenonrect=t[@@derivingsexp_of]endmoduleReversed:sigtypebacktrace:=t(** A backtrace, represented from allocation site to toplevel *)typet[@@derivingsexp,bin_io,compare,hash]valof_forward:backtrace->tvalof_reversed_list:Location.tlist->tvalelements:t->Location.tlistvalnil:tvalcons:Location.t->t->tvalappend:t->t->tvalhd:t->Location.toptionvaltl:t->toptionvalhead_and_tail:t->(Location.t*t)optionincludeComparable.Swithtypet:=tmoduleDebug:sigtypenonrect=t[@@derivingsexp_of]endendvalof_reversed:Reversed.t->tendmoduletypeFragment=sigmoduleLocation:LocationmoduleEntry:EntrymoduleBacktrace:BacktracewithmoduleLocation:=LocationmoduleId:sigtypet[@@derivingbin_io]includeHashable.Swithtypet:=tincludeSexpable.Swithtypet:=tincludeComparable.Swithtypet:=tendtypetvalid:t->Id.tvalis_empty:t->boolvalis_singleton:t->boolvalsame:t->t->boolvalentry:t->Entry.tvalfirst:t->orient:Orientation.t->Location.tvalbacktrace:t->Backtrace.tvalbacktrace_rev:t->Backtrace.Reversed.tvalretract:t->orient:Orientation.t->toptionvalretract_by:t->orient:Orientation.t->n:int->toptionvalone_frame_extensions:t->orient:Orientation.t->(Location.t,t)List.Assoc.tvalhas_extensions:t->orient:Orientation.t->boolvalextend:t->orient:Orientation.t->Location.t->toptionvalextend_by_callers:t->Backtrace.Reversed.t->toptionvalextend_by_callees:t->Backtrace.t->toptionvalis_extension:t->extension:t->orient:Orientation.t->boolvalrepresentative:t->tvallength:t->intmoduleDebug:sigtypenonrect=t[@@derivingsexp_of]endmoduleOriented:sigtypefragment:=t(** A fragment and an orientation. Can be thought of as a tree node --
with its extensions as children and it's retraction as parent. *)typetvalfragment:t->fragmentvalorient:t->Orientation.tvalfirst:t->Location.tvalretract:t->toptionvalretract_by:t->n:int->toptionvalone_frame_extensions:t->(Location.t,t)List.Assoc.tvalhas_extensions:t->boolvalextend:t->Location.t->toptionmoduleDebug:sigtypenonrect=t[@@derivingsexp_of]endendvaloriented:t->orient:Orientation.t->Oriented.tmoduleIterator:sigtypefragment:=t(** An iterator that iterates through the prefixes of a fragment
from callers to callees. *)typetvalnext:t->toptionvalprev:t->toptionvallocation:t->Location.tvalprefix:t->fragmentvalsuffix:t->fragmentmoduleTrace:sigtypet=private{prefix_trace:Backtrace.Reversed.t;suffix_trace:Backtrace.t}[@@derivingsexp,bin_io,compare]includeComparable.Swithtypet:=tendvaltrace:t->Trace.tendvaliterator_start:t->Iterator.toptionvaliterator_end:t->Iterator.toptionendmoduletypeTrie=sigmoduleLocation:LocationmoduleEntry:EntrymoduleMetadata:MetadatamoduleBacktrace:BacktracewithmoduleLocation:=LocationmoduletypeSuffix_tree=Suffix_treewithtypelocation:=Location.tandtypeentry:=Entry.tmoduleFragment:FragmentwithmoduleLocation:=LocationandmoduleEntry:=EntryandmoduleBacktrace:=Backtracetypet[@@derivingsexp]valof_suffix_tree:(moduleSuffix_treewithtypet='a)->'a->metadata:Metadata.t->tvalmetadata:t->Metadata.tvalempty_fragment:t->Fragment.tvalfind:t->Backtrace.t->Fragment.toptionvalfind_rev:t->Backtrace.Reversed.t->Fragment.toptionvalfind_singleton:t->Location.t->Fragment.toptionvalfind_iterator:t->Fragment.Iterator.Trace.t->Fragment.Iterator.toptionvaldeep_fold_callers:t->init:'a->f:(backtrace:Backtrace.t->fragment:Fragment.t->'a->'a)->'avaldeep_fold_callees:t->init:'a->f:(backtrace_rev:Backtrace.Reversed.t->fragment:Fragment.t->'a->'a)->'avalfold_singletons:t->init:'a->f:(location:Location.t->fragment:Fragment.t->'a->'a)->'amoduleSerialized:sigtypeunserialized:=ttypet[@@derivingsexp,bin_io]valserialize:unserialized->tvalunserialize:t->unserializedendmoduleDebug:sigtypenonrect=t[@@derivingsexp_of]endendmoduletypeS=sigmoduleLocation:LocationmoduleEntry:EntrymoduleMetadata:MetadatamoduletypeSuffix_tree=Suffix_treewithtypelocation:=Location.tandtypeentry:=Entry.tmoduleBacktrace:BacktracewithmoduleLocation:=LocationmoduleFragment:FragmentwithmoduleLocation:=LocationandmoduleEntry:=EntryandmoduleBacktrace:=BacktracemoduleTrie:TriewithmoduleLocation:=LocationandmoduleEntry:=EntryandmoduleMetadata:=MetadataandmoduleBacktrace:=BacktraceandmoduleFragment:=FragmentmoduleFor_testing:sigmoduleDumped:sigtypet=Trie.t[@@derivingsexp_of]endendendmoduletypeFragment_trie=sigmoduletypeLocation=LocationmoduletypeEntry=EntrymoduletypeMetadata=MetadatamoduletypeBacktrace=BacktracemoduletypeSuffix_tree=Suffix_treemoduletypeFragment=FragmentmoduletypeTrie=TriemoduletypeS=SmoduleMake(Location:Location)(Entry:Entry)(Metadata:Metadata):SwithmoduleLocation:=LocationandmoduleEntry:=EntryandmoduleMetadata:=Metadataend