package catala

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Scopelang.DependencySource

Graph representation of the dependencies between scopes in the Catala program. Vertices are functions, x -> y if x is used in the definition of y.

Sourcemodule Pos = Utils.Pos
Sourcemodule Errors = Utils.Errors
Sourcemodule SVertex : sig ... end
Sourcemodule SEdge : sig ... end

On the edges, the label is the expression responsible for the use of the function

Sourcemodule SDependencies : sig ... end
Sourcemodule STopologicalTraversal : sig ... end
Sourcemodule SSCC : sig ... end

Tarjan's stongly connected components algorithm, provided by OCamlGraph

Sourceval build_program_dep_graph : Ast.program -> SDependencies.t
Sourceval check_for_cycle_in_scope : SDependencies.t -> unit
Sourceval get_scope_ordering : SDependencies.t -> Ast.ScopeName.t list
Sourcemodule TVertex : sig ... end
Sourcemodule TVertexSet : sig ... end
Sourcemodule TEdge : sig ... end

On the edges, the label is the expression responsible for the use of the function

Sourcemodule TDependencies : sig ... end
Sourcemodule TTopologicalTraversal : sig ... end
Sourcemodule TSCC : sig ... end

Tarjan's stongly connected components algorithm, provided by OCamlGraph

Sourceval get_structs_or_enums_in_type : Ast.typ Pos.marked -> TVertexSet.t
Sourceval check_type_cycles : Ast.struct_ctx -> Ast.enum_ctx -> unit
OCaml

Innovation. Community. Security.