Module Costlib.CostUtils
module L = IBase.Logging
module BasicCost = CostDomain.BasicCost
module CostModelEnv : sig ... end
type model
= CostModelEnv.cost_model_env -> ret:(IR.Ident.t * IR.Typ.t) -> BO.BufferOverrunDomain.Mem.t -> BasicCost.t
val unit_cost_of : of_function:string -> IBase.Location.t -> BasicCost.t
val of_itv : itv:BO.Itv.t -> degree_kind:BO__Polynomials.DegreeKind.t -> of_function:string -> IBase.Location.t -> BasicCost.t
val string_len_range_itv : BO.BufferOverrunUtils.ModelEnv.model_env -> IR.Exp.t -> from:(IR.Exp.t * IR.Typ.IntegerWidths.t) option -> BO.BufferOverrunDomain.Mem.t -> BO.Itv.t
Given a string of length n and an optional starting index i (0 by default), return itv
0, n_u-i_l
module type S = sig ... end
module Collection : S
module NSCollection : S
val get_nodes_in_block : block_start:IR.Procdesc.Node.t -> block_exit:IR.Procdesc.Node.t -> IR.Procdesc.NodeSet.t
val get_nodes_in_autoreleasepool : IR.Procdesc.t -> IR.Procdesc.NodeSet.t