Source file dns_resolvconf.ml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
let parse buf =
try
Resolvconf_state.reset ();
let buf =
if String.(get buf (pred (length buf))) = '\n' then buf else buf ^ "\n"
in
let lexbuf = Lexing.from_string buf in
Ok (Resolvconf_parser.resolvconf Resolvconf_lexer.lex lexbuf)
with
| Parsing.Parse_error ->
Error (`Msg (Fmt.str "parse error at line %d" Resolvconf_state.(state.lineno)))
| exn ->
Error (`Msg (Fmt.str "error at line %d: %s" Resolvconf_state.(state.lineno)
(Printexc.to_string exn)))