1 (* Augeas OCaml bindings
2 * Copyright (C) 2008 Red Hat Inc., Richard W.M. Jones
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18 * $Id: augeas.ml,v 1.2 2008/05/06 10:48:20 rjones Exp $
33 | AugTraceModuleLoading
49 | AugErrUnknown of int
55 exception Error of error_code * string * string * string
61 external create : string -> string option -> flag list -> t
62 = "ocaml_augeas_create"
63 external close : t -> unit
64 = "ocaml_augeas_close"
65 external defvar : t -> string -> string option -> int option
66 = "ocaml_augeas_defvar"
67 external get : t -> path -> value option
69 external exists : t -> path -> bool
70 = "ocaml_augeas_exists"
71 external insert : t -> ?before:bool -> path -> string -> unit
72 = "ocaml_augeas_insert"
73 external rm : t -> path -> int
75 external matches : t -> path -> path list
76 = "ocaml_augeas_match"
77 external count_matches : t -> path -> int
78 = "ocaml_augeas_count_matches"
79 external save : t -> unit
81 external load : t -> unit
83 external set : t -> path -> value option -> unit
85 external transform : t -> string -> string -> transform_mode -> unit
86 = "ocaml_augeas_transform"
87 external source : t -> path -> path option
88 = "ocaml_augeas_source"
91 Callback.register_exception "Augeas.Error" (Error (AugErrInternal, "", "", ""))