2
* Pike Extension Modules - A collection of modules for the Pike Language
3
* Copyright � 2000-2003 The Caudium Group
5
* This program is free software; you can redistribute it and/or
6
* modify it under the terms of the GNU General Public License as
7
* published by the Free Software Foundation; either version 2 of the
8
* License, or (at your option) any later version.
10
* This program is distributed in the hope that it will be useful, but
11
* WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
* General Public License for more details.
15
* You should have received a copy of the GNU General Public License
16
* along with this program; if not, write to the Free Software
17
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19
* $Id: AbstractCallbacks.pike,v 1.1.1.1 2006/03/27 12:40:18 exodusd Exp $
23
* File licensing and authorship information block.
25
* Version: MPL 1.1/LGPL 2.1
27
* The contents of this file are subject to the Mozilla Public License Version
28
* 1.1 (the "License"); you may not use this file except in compliance with
29
* the License. You may obtain a copy of the License at
30
* http://www.mozilla.org/MPL/
32
* Software distributed under the License is distributed on an "AS IS" basis,
33
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
34
* for the specific language governing rights and limitations under the
37
* The Initial Developer of the Original Code is
39
* Marek Habersack <grendel@caudium.net>
41
* Portions created by the Initial Developer are Copyright (C) Marek Habersack
42
* & The Caudium Group. All Rights Reserved.
46
* Alternatively, the contents of this file may be used under the terms of
47
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
48
* in which case the provisions of the LGPL are applicable instead
49
* of those above. If you wish to allow use of your version of this file only
50
* under the terms of the LGPL, and not to allow others to use your version
51
* of this file under the terms of the MPL, indicate your decision by
52
* deleting the provisions above and replace them with the notice
53
* and other provisions required by the LGPL. If you do not delete
54
* the provisions above, a recipient may use your version of this file under
55
* the terms of any one of the MPL or the LGPL.
57
* Significant Contributors to this file are:
61
//! Callback on internal subset declaration.
64
//! The root element name
70
//! The SYSTEM ID (e.g. filename or URL)
71
void internalSubsetSAX(object parser, string name, string externalID, string systemID, void|mixed userData)
74
//! Is this document tagged standalone or not.
77
//! 0 -- the document is not standalone, 1 -- the document is standalone
78
int isStandaloneSAX(object parser, void|mixed userData)
83
//! Does this document have an internal subset
86
//! 0 -- internal subset is absent, 1 -- internal subset is present.
87
int hasInternalSubsetSAX(object parser, void|mixed userData)
92
//! Does this document have an external subset
95
//! 0 -- external subset is absent, 1 -- external subset is present.
96
int hasExternalSubsetSAX(object parser, void|mixed userData)
101
string getEntitySAX(object parser, string name, void|mixed userData)
106
//! An entity definition has been parsed.
115
//! The public ID of the entity
118
//! The system ID of the entity
121
//! The entity value (unprocessed)
122
void entityDeclSAX(object parser, string name, int type, string publicId,
123
string systemId, string content, void|mixed userData)
126
//! A notation declaration has been parsed.
129
//! The name of the notation
132
//! The public ID of the entity
135
//! The system ID of the entity
136
void notationDeclSAX(object parser, string name, string publicId, string systemId, void|mixed userData)
139
//! An attribute definition has been parsed
142
//! The name of the element
145
//! The attribute name
148
//! The attribute type
151
//! The type of default value
153
//! @param defaultValue
154
//! The default value of the attribute
157
//! An array containing the enumerated value set for the attribute
158
void attributeDeclSAX(object parser, string elem, string fullname, int type, int def,
159
string defaultValue, array(string) enumvals, void|mixed userData)
162
//! An element definition has been parsed
171
//! The element value tree represented as a mapping.
172
void elementDeclSAX(object parser, string name, int type, mapping(string:string|int) content,
176
//! An unparsed entity declaration was parsed
179
//! The name of the entity
182
//! The public ID of the entity
185
//! The system ID of the entity
187
//! @param notationName
188
//! The name of the notation
189
void unparsedEntityDeclSAX(object parser, string name, string publicId, string systemId, string notationName,
193
//! The start of the document was parsed
194
void startDocumentSAX(object parser, void|mixed userData)
197
//! The end of the document was parsed
198
void endDocumentSAX(object parser, void|mixed userData)
201
//! An opening tag has been parsed
207
//! A mapping with all the attributes parsed in the tag
208
void startElementSAX(object parser, string name, mapping(string:string) attrs, void|mixed userData)
211
//! A closing tag has been parsed
214
//! The name of the tag.
215
void endElementSAX(object parser, string name, void|mixed userData)
218
//! An entity reference has been parsed.
222
void referenceSAX(object parser, string name, void|mixed userData)
225
//! The parser returned some arbitrary characters.
228
//! The parsed characters.
229
void charactersSAX(object parser, string chars, void|mixed userData)
232
//! Some ignorable white space characters were parsed
235
//! The parsed characters
236
void ignorableWhitespaceSAX(object parser, string chars, void|mixed userData)
239
//! A processing instruction has been parsed
246
void processingInstructionSAX(object parser, string target, string data, void|mixed userData)
249
//! A comment has been parsed
252
//! The contents of the comment block
253
void commentSAX(object parser, string value, void|mixed userData)
256
//! Parser warning callback.
260
void warningSAX(object parser, string msg, void|mixed userData)
263
//! Parser error callback.
267
void errorSAX(object parser, string msg, void|mixed userData)
270
//! Parser fatal error callback.
274
void fatalErrorSAX(object parser, string msg, void|mixed userData)
277
void getParameterEntitySAX(object parser, void|mixed userData)
280
//! A PCDATA block has been parsed
283
//! The contents of the block
284
void cdataBlockSAX(object parser, string value, void|mixed userData)
287
//! An external subset declaration has been parsed
290
//! The root element name
292
//! @param externalId
296
//! The system ID (e.g. a filename or URL)
297
void externalSubsetSAX(object parser, string name, string externalId, string systemId,