You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.
<!DOCTYPE html>
< html xmlns = "http://www.w3.org/1999/xhtml" > < head > < title > InferModules__LithoDomain (infer.InferModules__LithoDomain)< / title > < link rel = "stylesheet" href = "../../odoc.css" / > < meta charset = "utf-8" / > < meta name = "generator" content = "odoc %%VERSION%%" / > < meta name = "viewport" content = "width=device-width,initial-scale=1.0" / > < script src = "../../highlight.pack.js" > < / script > < script > hljs . initHighlightingOnLoad ( ) ; < / script > < / head > < body > < div class = "content" > < header > < nav > < a href = "../index.html" > Up< / a > – < a href = "../index.html" > infer< / a > » InferModules__LithoDomain< / nav > < h1 > Module < code > InferModules__LithoDomain< / code > < / h1 > < / header > < div class = "spec module" id = "module-F" > < a href = "#module-F" class = "anchor" > < / a > < code > < span class = "keyword" > module< / span > F = Stdlib.Format< / code > < / div > < dl > < dt class = "spec module" id = "module-LocalAccessPath" > < a href = "#module-LocalAccessPath" class = "anchor" > < / a > < code > < span class = "keyword" > module< / span > < a href = "LocalAccessPath/index.html" > LocalAccessPath< / a > : < span class = "keyword" > sig< / span > ... < span class = "keyword" > end< / span > < / code > < / dt > < dd > < p > Access path + its parent procedure< / p > < / dd > < / dl > < dl > < dt class = "spec module" id = "module-MethodCall" > < a href = "#module-MethodCall" class = "anchor" > < / a > < code > < span class = "keyword" > module< / span > < a href = "MethodCall/index.html" > MethodCall< / a > : < span class = "keyword" > sig< / span > ... < span class = "keyword" > end< / span > < / code > < / dt > < dd > < p > Called procedure + its receiver< / p > < / dd > < / dl > < div class = "spec module" id = "module-CallSet" > < a href = "#module-CallSet" class = "anchor" > < / a > < code > < span class = "keyword" > module< / span > < a href = "CallSet/index.html" > CallSet< / a > : < span class = "keyword" > module< / span > < span class = "keyword" > type< / span > < span class = "keyword" > of< / span > < span class = "keyword" > sig< / span > ... < span class = "keyword" > end< / span > < / code > < / div > < div > < div class = "spec include" > < div class = "doc" > < details open = "open" > < summary > < span class = "def" > < code > < span class = "keyword" > include< / span > < span class = "keyword" > module< / span > < span class = "keyword" > type< / span > < span class = "keyword" > of< / span > < span class = "keyword" > sig< / span > ... < span class = "keyword" > end< / span > < / code > < / span > < / summary > < dl > < dt class = "spec type" id = "type-key" > < a href = "#type-key" class = "anchor" > < / a > < code > < span class = "keyword" > type< / span > key< / code > < code > = < a href = "LocalAccessPath/index.html#type-t" > LocalAccessPath.t< / a > < / code > < / dt > < dt class = "spec type" id = "type-value" > < a href = "#type-value" class = "anchor" > < / a > < code > < span class = "keyword" > type< / span > value< / code > < code > = < a href = "CallSet/index.html#type-t" > CallSet.t< / a > < / code > < / dt > < dt class = "spec type" id = "type-t" > < a href = "#type-t" class = "anchor" > < / a > < code > < span class = "keyword" > type< / span > t< / code > < code > = < a href = "../InferModules__AbstractDomain/Map/index.html#type-t" > InferModules__AbstractDomain.Map(LocalAccessPath)(CallSet).t< / a > < / code > < / dt > < / dl > < dl > < dt class = "spec value" id = "val-empty" > < a href = "#val-empty" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > empty : < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-is_empty" > < a href = "#val-is_empty" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > is_empty : < a href = "index.html#type-t" > t< / a > < span > - > < / span > bool< / code > < / dt > < dt class = "spec value" id = "val-mem" > < a href = "#val-mem" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > mem : < a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > bool< / code > < / dt > < dt class = "spec value" id = "val-add" > < a href = "#val-add" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > add : < a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-update" > < a href = "#val-update" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > update : < a href = "index.html#type-key" > key< / a > < span > - > < / span > < span > (< span > < a href = "index.html#type-value" > value< / a > option< / span > < span > - > < / span > < span > < a href = "index.html#type-value" > value< / a > option< / span > )< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-singleton" > < a href = "#val-singleton" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > singleton : < a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-remove" > < a href = "#val-remove" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > remove : < a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-merge" > < a href = "#val-merge" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > merge : < span > (< a href = "index.html#type-key" > key< / a > < span > - > < / span > < span > < a href = "index.html#type-value" > value< / a > option< / span > < span > - > < / span > < span > < a href = "index.html#type-value" > value< / a > option< / span > < span > - > < / span > < span > < a href = "index.html#type-value" > value< / a > option< / span > )< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-union" > < a href = "#val-union" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > union : < span > (< a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < span > - > < / span > < span > < a href = "index.html#type-value" > value< / a > option< / span > )< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-compare" > < a href = "#val-compare" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > compare : < span > (< a href = "index.html#type-value" > value< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < span > - > < / span > int)< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > int< / code > < / dt > < dt class = "spec value" id = "val-equal" > < a href = "#val-equal" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > equal : < span > (< a href = "index.html#type-value" > value< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < span > - > < / span > bool)< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > bool< / code > < / dt > < dt class = "spec value" id = "val-iter" > < a href = "#val-iter" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > iter : < span > (< a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < span > - > < / span > unit)< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > unit< / code > < / dt > < dt class = "spec value" id = "val-fold" > < a href = "#val-fold" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > fold : < span > (< a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < span > - > < / span > < span class = "type-var" > 'a< / span > < span > - > < / span > < span class = "type-var" > 'a< / span > )< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < span class = "type-var" > 'a< / span > < span > - > < / span > < span class = "type-var" > 'a< / span > < / code > < / dt > < dt class = "spec value" id = "val-for_all" > < a href = "#val-for_all" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > for_all : < span > (< a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < span > - > < / span > bool)< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > bool< / code > < / dt > < dt class = "spec value" id = "val-exists" > < a href = "#val-exists" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > exists : < span > (< a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < span > - > < / span > bool)< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > bool< / code > < / dt > < dt class = "spec value" id = "val-filter" > < a href = "#val-filter" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > filter : < span > (< a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < span > - > < / span > bool)< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-partition" > < a href = "#val-partition" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > partition : < span > (< a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < span > - > < / span > bool)< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > * < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-cardinal" > < a href = "#val-cardinal" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > cardinal : < a href = "index.html#type-t" > t< / a > < span > - > < / span > int< / code > < / dt > < dt class = "spec value" id = "val-bindings" > < a href = "#val-bindings" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > bindings : < a href = "index.html#type-t" > t< / a > < span > - > < / span > < span > < span > (< a href = "index.html#type-key" > key< / a > * < a href = "index.html#type-value" > value< / a > )< / span > list< / span > < / code > < / dt > < dt class = "spec value" id = "val-min_binding" > < a href = "#val-min_binding" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > min_binding : < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-key" > key< / a > * < a href = "index.html#type-value" > value< / a > < / code > < / dt > < dt class = "spec value" id = "val-min_binding_opt" > < a href = "#val-min_binding_opt" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > min_binding_opt : < a href = "index.html#type-t" > t< / a > < span > - > < / span > < span > < span > (< a href = "index.html#type-key" > key< / a > * < a href = "index.html#type-value" > value< / a > )< / span > option< / span > < / code > < / dt > < dt class = "spec value" id = "val-max_binding" > < a href = "#val-max_binding" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > max_binding : < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-key" > key< / a > * < a href = "index.html#type-value" > value< / a > < / code > < / dt > < dt class = "spec value" id = "val-max_binding_opt" > < a href = "#val-max_binding_opt" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > max_binding_opt : < a href = "index.html#type-t" > t< / a > < span > - > < / span > < span > < span > (< a href = "index.html#type-key" > key< / a > * < a href = "index.html#type-value" > value< / a > )< / span > option< / span > < / code > < / dt > < dt class = "spec value" id = "val-choose" > < a href = "#val-choose" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > choose : < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-key" > key< / a > * < a href = "index.html#type-value" > value< / a > < / code > < / dt > < dt class = "spec value" id = "val-choose_opt" > < a href = "#val-choose_opt" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > choose_opt : < a href = "index.html#type-t" > t< / a > < span > - > < / span > < span > < span > (< a href = "index.html#type-key" > key< / a > * < a href = "index.html#type-value" > value< / a > )< / span > option< / span > < / code > < / dt > < dt class = "spec value" id = "val-split" > < a href = "#val-split" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > split : < a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > * < span > < a href = "index.html#type-value" > value< / a > option< / span > * < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-find" > < a href = "#val-find" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > find : < a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < / code > < / dt > < dt class = "spec value" id = "val-find_opt" > < a href = "#val-find_opt" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > find_opt : < a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < span > < a href = "index.html#type-value" > value< / a > option< / span > < / code > < / dt > < dt class = "spec value" id = "val-find_first" > < a href = "#val-find_first" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > find_first : < span > (< a href = "index.html#type-key" > key< / a > < span > - > < / span > bool)< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-key" > key< / a > * < a href = "index.html#type-value" > value< / a > < / code > < / dt > < dt class = "spec value" id = "val-find_first_opt" > < a href = "#val-find_first_opt" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > find_first_opt : < span > (< a href = "index.html#type-key" > key< / a > < span > - > < / span > bool)< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < span > < span > (< a href = "index.html#type-key" > key< / a > * < a href = "index.html#type-value" > value< / a > )< / span > option< / span > < / code > < / dt > < dt class = "spec value" id = "val-find_last" > < a href = "#val-find_last" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > find_last : < span > (< a href = "index.html#type-key" > key< / a > < span > - > < / span > bool)< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-key" > key< / a > * < a href = "index.html#type-value" > value< / a > < / code > < / dt > < dt class = "spec value" id = "val-find_last_opt" > < a href = "#val-find_last_opt" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > find_last_opt : < span > (< a href = "index.html#type-key" > key< / a > < span > - > < / span > bool)< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < span > < span > (< a href = "index.html#type-key" > key< / a > * < a href = "index.html#type-value" > value< / a > )< / span > option< / span > < / code > < / dt > < dt class = "spec value" id = "val-map" > < a href = "#val-map" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > map : < span > (< a href = "index.html#type-value" > value< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > )< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-mapi" > < a href = "#val-mapi" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > mapi : < span > (< a href = "index.html#type-key" > key< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > < span > - > < / span > < a href = "index.html#type-value" > value< / a > )< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-is_singleton_or_more" > < a href = "#val-is_singleton_or_more" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > is_singleton_or_more : < a href = "index.html#type-t" > t< / a > < span > - > < / span > < span > < span > (< a href = "index.html#type-key" > key< / a > * < a href = "index.html#type-value" > value< / a > )< / span > < a href = "../../InferStdlib/InferStdlib/IContainer/index.html#type-singleton_or_more" > InferStdlib.IContainer.singleton_or_more< / a > < / span > < / code > < / dt > < dt class = "spec value" id = "val-pp_key" > < a href = "#val-pp_key" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > pp_key : < a href = "../../InferStdlib/InferStdlib/PrettyPrintable/index.html#module-F" > InferStdlib.PrettyPrintable.F< / a > .formatter < span > - > < / span > < a href = "index.html#type-key" > key< / a > < span > - > < / span > unit< / code > < / dt > < dt class = "spec value" id = "val-pp" > < a href = "#val-pp" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > pp : < a href = "../../InferStdlib/InferStdlib/PrettyPrintable/index.html#module-F" > InferStdlib.PrettyPrintable.F< / a > .formatter < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > unit< / code > < / dt > < dt class = "spec value" id = "val-(<=)" > < a href = "#val-(<=)" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > (< =) : < span > lhs:< a href = "index.html#type-t" > t< / a > < / span > < span > - > < / span > < span > rhs:< a href = "index.html#type-t" > t< / a > < / span > < span > - > < / span > bool< / code > < / dt > < dt class = "spec value" id = "val-join" > < a href = "#val-join" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > join : < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-widen" > < a href = "#val-widen" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > widen : < span > prev:< a href = "index.html#type-t" > t< / a > < / span > < span > - > < / span > < span > next:< a href = "index.html#type-t" > t< / a > < / span > < span > - > < / span > < span > num_iters:int< / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-bottom" > < a href = "#val-bottom" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > bottom : < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dt class = "spec value" id = "val-is_bottom" > < a href = "#val-is_bottom" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > is_bottom : < a href = "index.html#type-t" > t< / a > < span > - > < / span > bool< / code > < / dt > < / dl > < / details > < / div > < / div > < / div > < dl > < dt class = "spec value" id = "val-substitute" > < a href = "#val-substitute" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > substitute : < span > f_sub:< span > (< a href = "LocalAccessPath/index.html#type-t" > LocalAccessPath.t< / a > < span > - > < / span > < span > < a href = "LocalAccessPath/index.html#type-t" > LocalAccessPath.t< / a > option< / span > )< / span > < / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < / code > < / dt > < dd > < p > Substitute each access path in the domain using < code > f_sub< / code > . If < code > f_sub< / code > returns None, the original access path is retained; otherwise, the new one is used< / p > < / dd > < / dl > < dl > < dt class = "spec value" id = "val-iter_call_chains" > < a href = "#val-iter_call_chains" class = "anchor" > < / a > < code > < span class = "keyword" > val< / span > iter_call_chains : < span > f:< span > (< a href = "../../InferIR/InferIR/AccessPath/index.html#type-t" > InferIR.AccessPath.t< / a > < span > - > < / span > < span > < a href = "../../InferIR/InferIR/Typ/Procname/index.html#type-t" > InferIR.Typ.Procname.t< / a > list< / span > < span > - > < / span > unit)< / span > < / span > < span > - > < / span > < a href = "index.html#type-t" > t< / a > < span > - > < / span > unit< / code > < / dt > < dd > < p > Apply < code > f< / code > to each maximal call chain encoded in < code > t< / code > < / p > < / dd > < / dl > < / div > < / body > < / html >