{(* * 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
*)
let error lexbuf e =
last_pos := lexeme_start lexbuf; raise (Error e)
}
let newline = ['\n'] let break = ['\r'] let space = [' ''\t'] let identchar = ['A'-'Z''a'-'z''_''0'-'9'':''-''.'] let ident = ['A'-'Z''a'-'z''_'':'] identchar* let entitychar = ['A'-'Z''a'-'z'] let pcchar = [^ '\r''\n''<''>''&']
and attributes = parse
| '>'
{ [], false }
| "/>"
{ [], true }
| ""(* do not read a char ! *)
{ let key = attribute lexbuf in let data = attribute_data lexbuf in
ignore_spaces lexbuf; let others, closed = attributes lexbuf in
(key, data) :: others, closed
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.