aboutsummaryrefslogtreecommitdiff
path: root/ide/protocol/xml_lexer.mli
diff options
context:
space:
mode:
authorPierre-Marie Pédrot2018-05-26 20:20:33 +0200
committerPierre-Marie Pédrot2018-05-26 20:20:33 +0200
commit71557d5499fcf78d023eefc8d7a2b7a118b81ed5 (patch)
treea54a50a8b7758823709ee776b4825702e3003dcf /ide/protocol/xml_lexer.mli
parentac2c4bc19afe7d68918cbc6f605a9bcfcdbf0f35 (diff)
parent5a564f986b5dcb74e347fbdc571d9e1a9980c2a4 (diff)
Merge PR #7543: [ide] Move common protocol library to its own folder/object.
Diffstat (limited to 'ide/protocol/xml_lexer.mli')
-rw-r--r--ide/protocol/xml_lexer.mli44
1 files changed, 44 insertions, 0 deletions
diff --git a/ide/protocol/xml_lexer.mli b/ide/protocol/xml_lexer.mli
new file mode 100644
index 0000000000..e61cb055f7
--- /dev/null
+++ b/ide/protocol/xml_lexer.mli
@@ -0,0 +1,44 @@
+(*
+ * Xml Light, an small Xml parser/printer with DTD support.
+ * Copyright (C) 2003 Nicolas Cannasse (ncannasse@motion-twin.com)
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *)
+
+type error =
+ | EUnterminatedComment
+ | EUnterminatedString
+ | EIdentExpected
+ | ECloseExpected
+ | ENodeExpected
+ | EAttributeNameExpected
+ | EAttributeValueExpected
+ | EUnterminatedEntity
+
+exception Error of error
+
+type token =
+ | Tag of string * (string * string) list * bool
+ | PCData of string
+ | Endtag of string
+ | Eof
+
+type pos = int * int * int * int
+
+val init : Lexing.lexbuf -> unit
+val close : unit -> unit
+val token : Lexing.lexbuf -> token
+val pos : Lexing.lexbuf -> pos
+val restore : pos -> unit