package dune
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=317bec6de4429b5dee157e9864294e1534b722a2acfc50480bd16c804ab790ca
sha512=17450333156622d4612816f9ad5a224c741d62b247d63c1d77b5359d37517c1f9bc598dd11fa024f4e02ccf7eef474cd532eef1d9c34ed13439db6c781f9fa7a
doc/dune._dune_lang/Dune_lang/index.html
Module Dune_lang
Parsing of s-expressions.
This library is internal to dune and guarantees no API stability.
module Atom : sig ... end
module Syntax : sig ... end
module Template : sig ... end
The S-expression type
val atom : string -> t
atom s
convert the string s
to an Atom.
val atom_or_quoted_string : string -> t
val unsafe_atom_of_string : string -> t
val pp : syntax -> Format.formatter -> t -> unit
Serialize a S-expression using indentation to improve readability
val pp_quoted : Format.formatter -> t -> unit
Serialization that never fails because it quotes atoms when necessary TODO remove this once we have a proper sexp type
val pp_split_strings : Format.formatter -> t -> unit
Same as pp ~syntax:Dune
, but split long strings. The formatter must have been prepared with prepare_formatter
.
val prepare_formatter : Format.formatter -> unit
Prepare a formatter for pp_split_strings
. Additionaly the formatter escape newlines when the tags "makefile-action" or "makefile-stuff" are active.
module Ast : sig ... end
Abstract syntax tree
val add_loc : t -> loc:Stdune.Loc.t -> Ast.t
module Cst : sig ... end
Concrete syntax tree
val insert_comments :
Cst.t list ->
(Stdune.Loc.t * Cst.Comment.t) list ->
Cst.t list
Insert comments in a concrete syntax tree. Comments are inserted based on their location.
module Parse_error : sig ... end
exception Parse_error of Parse_error.t
Exception raised in case of a parsing error
module Lexer : sig ... end
module Parser : sig ... end
val parse_string :
fname:string ->
mode:'a Parser.Mode.t ->
?lexer:Lexer.t ->
string ->
'a
module Encoder : sig ... end
module Decoder : sig ... end
module type Conv = sig ... end
val to_sexp : t Stdune.Sexp.Encoder.t
module Io : sig ... end