package goblint
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
Static analysis framework for C
Install
dune-project
Dependency
Authors
Maintainers
Sources
goblint-2.7.1.tbz
sha256=af01aac256229f33a90a9fcbfed04b01e3097f154d4d124f006476d6387c6a66
sha512=2a93bfe16881adbc2d8dcbfe38c1e19cd24ca105d8e1eda13d02440f3002874ffe2957dfd937510765233a054a40568b0052db92e31d382a5bd215d1ec12565c
doc/src/goblint.constraint/varQuery.ml.html
Source file varQuery.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40open GoblintCil type t = | Global of CilType.Varinfo.t | Node of {node: Node.t; fundec: CilType.Fundec.t option} [@@deriving ord] type 'v f = 'v -> unit let varinfo_from_global (g : Cil.global) : Cil.varinfo option = match g with | GFun (f, _) -> Some f.svar | GVar (v, _, _) -> Some v | GVarDecl (v, _) -> Some v | _ -> None let varquery_from_global (g : Cil.global) : t option = match g with | GFun (f, _) -> Some (Node {node = FunctionEntry f; fundec = Some f}) | GVar (v, _, _) -> Some (Global v) | GVarDecl (v, _) -> Some (Global v) | _ -> None let varqueries_from_names (file: Cil.file) (names: string list): t list * string list = let module SM = Set.Make(Printable.Strings) in let set = SM.of_list names in (* Find list of [Cil.global]s that have one of the queried names, and a set of the found names *) let globals, matched = Cil.foldGlobals file (fun ((globs, matched) as acc) g -> match varinfo_from_global g, varquery_from_global g with | Some v, Some vq -> begin match SM.mem v.vname set with | true -> (vq::globs, SM.add v.vname matched) | _ -> acc end | None, None -> acc | _, _ -> assert false ) ([], SM.empty) in (* List of queried but not found names *) let unmatched = List.filter (fun s -> not @@ SM.mem s matched) names in globals, unmatched
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>