package catala

  1. Overview
  2. Docs
Compiler and library for the literate programming language for tax code specification

Install

Dune Dependency

Authors

Maintainers

Sources

0.10.0.tar.gz
md5=5abd76e8c51a47670645e91b21b57fc5
sha512=9c6fbe50c0b5a60566e877eeddadca0a339e2ce35deb5c1beceb03bc40eb6af2d519313e71859d88645b53fad591d4fa5288c633b185c9d765603da0f5b7dd7b

doc/catala.desugared/Desugared/Dependency/index.html

Module Desugared.DependencySource

Scope dependencies computations using OCamlgraph

Scope variables dependency graph

Graph declaration

Vertices: scope variables or subscopes.

The vertices of the scope dependency graph are either :

  • the variables of the scope ;
  • the subscopes of the scope.

Indeed, during interpretation, subscopes are executed atomically.

Sourcemodule Vertex : sig ... end

On the edges, the label is the position of the expression responsible for the use of the variable. In the graph, x -> y if x is used in the definition of y.

Module of the graph, provided by OCamlGraph

Graph computations

Returns an ordering of the scope variables and subscope compatible with the dependencies of the computation

Sourceval correct_computation_ordering : ScopeDependencies.t -> Vertex.t list

Returns an ordering of the scope variables and subscope compatible with the dependencies of the computation

Sourceval check_for_cycle : Ast.scope -> ScopeDependencies.t -> unit

Outputs an error in case of cycles.

Sourceval build_scope_dependencies : Ast.scope -> ScopeDependencies.t

Builds the dependency graph of a particular scope

Exceptions dependency graph

Sourcemodule ExceptionVertex : sig ... end
Sourceval check_for_exception_cycle : Ast.rule Shared_ast.RuleName.Map.t -> ExceptionsDependencies.t -> unit
OCaml

Innovation. Community. Security.