Logo Search packages:      
Sourcecode: tclxml version File versions  Download package


/* tcllibxml2.h --
 *    This module provides an interface to libxml2.
 * Copyright (c) 2005 Explain
 * http://www.explain.com.au/
 * Copyright (c) 2003 Zveno Pty Ltd
 * http://www.zveno.com/
 * See the file "LICENSE" for information on usage and
 * redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES.
 * $Id: tclxml-libxml2.h,v 2005/12/28 06:49:51 balls Exp $


#include <tclxml/tclxml.h>
#include <libxml/tree.h>
#include "docObj.h"

 * For C++ compilers, use extern "C"

#ifdef __cplusplus
extern "C" {

 * These macros are used to control whether functions are being declared for
 * import or export in Windows, 
 * They map to no-op declarations on non-Windows systems.
 * Assumes that tcl.h defines DLLEXPORT & DLLIMPORT correctly.
 * The default build on windows is for a DLL, which causes the DLLIMPORT
 * and DLLEXPORT macros to be nonempty. To build a static library, the
 * macro STATIC_BUILD should be defined before the inclusion of tcl.h
 * If a function is being declared while it is being built
 * to be included in a shared library, then it should have the DLLEXPORT
 * storage class.  If is being declared for use by a module that is going to
 * link against the shared library, then it should have the DLLIMPORT storage
 * class.  If the symbol is beind declared for a static build or for use from a
 * stub library, then the storage class should be empty.
 * The convention is that a macro called BUILD_xxxx, where xxxx is the
 * name of a library we are building, is set on the compile line for sources
 * that are to be placed in the library.  When this macro is set, the
 * storage class will be set to DLLEXPORT.  At the end of the header file, the
 * storage class will be reset to DLLIMPORt.

#ifdef BUILD_TclXML_libxml2
# else
# endif

 * The following function is required to be defined in all stubs aware
 * extensions of TclXML/libxml2.  The function is actually implemented in the stub
 * library, not the main TclXML/libxml2 library, although there is a trivial
 * implementation in the main library in case an extension is statically
 * linked into an application.

EXTERN CONST char *     TclXML_libxml2_InitStubs _ANSI_ARGS_((Tcl_Interp *interp,
                            CONST char *version, int exact));


 * When not using stubs, make it a macro.

#define TclXML_libxml2_InitStubs(interp, version, exact) \
    Tcl_PkgRequire(interp, "xml::libxml2", version, exact)


 * Accessor functions => Stubs

#include <tclxml-libxml2/tclxml-libxml2Decls.h>


#ifdef __cplusplus

#endif /* TCLXML_LIBXML2_H */

Generated by  Doxygen 1.6.0   Back to index