`module F = Format`
`module Lock : sig ... end`

Abstraction of a path that represents a lock, special-casing equality and comparisons to work over type, base variable modulo this and access list

`module Event : sig ... end`

Event type. Equality/comparison disregards the call trace but includes location.

`module EventDomain : module type of sig ... end`
`module Order : sig ... end`

Represents either

`module OrderDomain : sig ... end`
`module LockState : InferModules.AbstractDomain.WithBottom`
`module UIThreadDomain : InferModules.AbstractDomain.WithBottom with type astate = string InferModules.AbstractDomain.Types.bottom_lifted`
`type astate````=` `{`

`lock_state : LockState.astate;`
`events : EventDomain.astate;`
`order : OrderDomain.astate;`
`ui : UIThreadDomain.astate;`

`}```
`include InferModules.AbstractDomain.WithBottom with type astate := astate`
`include InferModules.AbstractDomain.S`
`type astate`````
`val (<=) : lhs:astate ‑> rhs:astate ‑> bool`

the partial order induced by join

`val join : astate ‑> astate ‑> astate`
`val widen : prev:astate ‑> next:astate ‑> num_iters:int ‑> astate`
`val pp : InferModules.AbstractDomain.F.formatter ‑> astate ‑> unit`
`val empty : astate`

The bottom value of the domain. Naming it empty instead of bottom helps to bind the empty value for sets and maps to the natural definition for bottom

`val is_empty : astate ‑> bool`

Return true if this is the bottom value

`val acquire : astate ‑> InferBase.Location.t ‑> Lock.t ‑> astate`
`val release : astate ‑> Lock.t ‑> astate`
`val blocking_call : caller:InferIR.Typ.Procname.t ‑> callee:InferIR.Typ.Procname.t ‑> Event.severity_t ‑> InferBase.Location.t ‑> astate ‑> astate`
`val set_on_ui_thread : astate ‑> string ‑> astate`

set the property "runs on UI thread" to true by attaching the given explanation string as to why this method is thought to do so

`type summary``= astate```
`val pp_summary : F.formatter ‑> summary ‑> unit`
`val integrate_summary : astate ‑> InferIR.Typ.Procname.t ‑> InferBase.Location.t ‑> summary ‑> astate`