Module Stan_math_backend

module Cpp : sig ... end

A set of data types representing the C++ we generate

module Cpp_Json : sig ... end
module Cpp_str : sig ... end

Utilities for converting OCaml strings into C++ strings

module Lower_expr : sig ... end

Lowering of Stan expressions to C++

module Lower_functions : sig ... end

Responsible for turning the Stan function's block into forward decls, functions, and functors in C++

module Lower_program : sig ... end

Stan-program-specific C++ generation

module Lower_stmt : sig ... end

Lowering of Stan statements to C++

module Mangle : sig ... end

Mangle variables which are C++ reserved words into valid C++ identifiers.

module Numbering : sig ... end

This module translates the locations of statements into an array of messages used in the C++ for providing locations in the Stan code when an error occurs, and replaces the locations in the MIR tree with indices into said array.

module Transform_Mir : sig ... end

Perform backend-specific transformations of the MIR such as mangling or renaming of functions which differ in the library implementation