Signatures.OutputWe assume a type representing a stream of written object. No function to create such flux are included in this signature, but we expect each output module to come with its own way of generating flux. The type is parameterised by the expected output when closing the flux. It is possible to choose unit as a parameter in the case where the output is done with side-effects.
module Repr : Representationexception Invalid_output of errorval error_to_string : error -> stringPrint-out the error.
val write_node : _ t -> Repr.Node.t -> unitWrite a node.
val write_nodes : _ t -> Repr.Node.t Stdlib.Seq.t -> unitWrite multiple nodes.
val write_way : _ t -> Repr.Way.t -> unitWrite a way.
val write_ways : _ t -> Repr.Way.t Stdlib.Seq.t -> unitWrite multiple ways.
val write_relation : _ t -> Repr.Relation.t -> unitWrite a relation.
val write_relations : _ t -> Repr.Relation.t Stdlib.Seq.t -> unitWrite multiple relations.
val write_object : _ t -> Repr.Object.t -> unitWrite an object.
val write_objects : _ t -> Repr.Object.t Stdlib.Seq.t -> unitWrite multiple objects.
val close : 'a. 'a t -> 'aClose an output, returning the final object.