file_indexing 0.0.2 → 0.0.8
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/file_indexing/index_agent.rb +61 -38
- data/lib/file_indexing/indexer_patterns.rb +10 -3
- data/lib/file_indexing/version.rb +5 -0
- data/lib/file_indexing.rb +2 -3
- data/spec/file_indexing/index_agent_spec.rb +54 -0
- data/test/file_indexing/index_agent_test/New.txt +0 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/bin/libexslt.dll +0 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/bin/libxslt.dll +0 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/bin/xsltproc.exe +0 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libexslt/exslt.h +102 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libexslt/exsltconfig.h +73 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libexslt/exsltexports.h +140 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libexslt/libexslt.h +29 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/attributes.h +38 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/documents.h +93 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/extensions.h +262 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/extra.h +80 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/functions.h +78 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/imports.h +75 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/keys.h +53 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/libxslt.h +30 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/namespaces.h +68 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/numbersInternals.h +69 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/pattern.h +81 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/preproc.h +43 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/security.h +104 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/templates.h +77 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/transform.h +207 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/trio.h +216 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/triodef.h +220 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/variables.h +91 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/win32config.h +101 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/xslt.h +103 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/xsltInternals.h +1967 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/xsltconfig.h +172 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/xsltexports.h +142 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/xsltlocale.h +57 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/xsltutils.h +309 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/xsltwin32config.h +105 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/lib/libexslt.lib +0 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/lib/libexslt_a.lib +0 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/lib/libxslt.lib +0 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/lib/libxslt_a.lib +0 -0
- data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/readme.txt +22 -0
- data/test/file_indexing/index_agent_test/patterns.input +3 -0
- data/test/file_indexing/index_agent_test.rb +53 -0
- metadata +129 -7
@@ -0,0 +1,80 @@
|
|
1
|
+
/*
|
2
|
+
* Summary: interface for the non-standard features
|
3
|
+
* Description: implement some extension outside the XSLT namespace
|
4
|
+
* but not EXSLT with is in a different library.
|
5
|
+
*
|
6
|
+
* Copy: See Copyright for the status of this software.
|
7
|
+
*
|
8
|
+
* Author: Daniel Veillard
|
9
|
+
*/
|
10
|
+
|
11
|
+
#ifndef __XML_XSLT_EXTRA_H__
|
12
|
+
#define __XML_XSLT_EXTRA_H__
|
13
|
+
|
14
|
+
#include <libxml/xpath.h>
|
15
|
+
#include "xsltexports.h"
|
16
|
+
#include "xsltInternals.h"
|
17
|
+
|
18
|
+
#ifdef __cplusplus
|
19
|
+
extern "C" {
|
20
|
+
#endif
|
21
|
+
|
22
|
+
/**
|
23
|
+
* XSLT_LIBXSLT_NAMESPACE:
|
24
|
+
*
|
25
|
+
* This is the libxslt namespace for specific extensions.
|
26
|
+
*/
|
27
|
+
#define XSLT_LIBXSLT_NAMESPACE ((xmlChar *) "http://xmlsoft.org/XSLT/namespace")
|
28
|
+
|
29
|
+
/**
|
30
|
+
* XSLT_SAXON_NAMESPACE:
|
31
|
+
*
|
32
|
+
* This is Michael Kay's Saxon processor namespace for extensions.
|
33
|
+
*/
|
34
|
+
#define XSLT_SAXON_NAMESPACE ((xmlChar *) "http://icl.com/saxon")
|
35
|
+
|
36
|
+
/**
|
37
|
+
* XSLT_XT_NAMESPACE:
|
38
|
+
*
|
39
|
+
* This is James Clark's XT processor namespace for extensions.
|
40
|
+
*/
|
41
|
+
#define XSLT_XT_NAMESPACE ((xmlChar *) "http://www.jclark.com/xt")
|
42
|
+
|
43
|
+
/**
|
44
|
+
* XSLT_XALAN_NAMESPACE:
|
45
|
+
*
|
46
|
+
* This is the Apache project XALAN processor namespace for extensions.
|
47
|
+
*/
|
48
|
+
#define XSLT_XALAN_NAMESPACE ((xmlChar *) \
|
49
|
+
"org.apache.xalan.xslt.extensions.Redirect")
|
50
|
+
|
51
|
+
/**
|
52
|
+
* XSLT_NORM_SAXON_NAMESPACE:
|
53
|
+
*
|
54
|
+
* This is Norm's namespace for SAXON extensions.
|
55
|
+
*/
|
56
|
+
#define XSLT_NORM_SAXON_NAMESPACE ((xmlChar *) \
|
57
|
+
"http://nwalsh.com/xslt/ext/com.nwalsh.saxon.CVS")
|
58
|
+
|
59
|
+
|
60
|
+
XSLTPUBFUN void XSLTCALL
|
61
|
+
xsltFunctionNodeSet (xmlXPathParserContextPtr ctxt,
|
62
|
+
int nargs);
|
63
|
+
XSLTPUBFUN void XSLTCALL
|
64
|
+
xsltDebug (xsltTransformContextPtr ctxt,
|
65
|
+
xmlNodePtr node,
|
66
|
+
xmlNodePtr inst,
|
67
|
+
xsltStylePreCompPtr comp);
|
68
|
+
|
69
|
+
|
70
|
+
XSLTPUBFUN void XSLTCALL
|
71
|
+
xsltRegisterExtras (xsltTransformContextPtr ctxt);
|
72
|
+
XSLTPUBFUN void XSLTCALL
|
73
|
+
xsltRegisterAllExtras (void);
|
74
|
+
|
75
|
+
#ifdef __cplusplus
|
76
|
+
}
|
77
|
+
#endif
|
78
|
+
|
79
|
+
#endif /* __XML_XSLT_EXTRA_H__ */
|
80
|
+
|
@@ -0,0 +1,78 @@
|
|
1
|
+
/*
|
2
|
+
* Summary: interface for the XSLT functions not from XPath
|
3
|
+
* Description: a set of extra functions coming from XSLT but not in XPath
|
4
|
+
*
|
5
|
+
* Copy: See Copyright for the status of this software.
|
6
|
+
*
|
7
|
+
* Author: Daniel Veillard and Bjorn Reese <breese@users.sourceforge.net>
|
8
|
+
*/
|
9
|
+
|
10
|
+
#ifndef __XML_XSLT_FUNCTIONS_H__
|
11
|
+
#define __XML_XSLT_FUNCTIONS_H__
|
12
|
+
|
13
|
+
#include <libxml/xpath.h>
|
14
|
+
#include <libxml/xpathInternals.h>
|
15
|
+
#include "xsltexports.h"
|
16
|
+
#include "xsltInternals.h"
|
17
|
+
|
18
|
+
#ifdef __cplusplus
|
19
|
+
extern "C" {
|
20
|
+
#endif
|
21
|
+
|
22
|
+
/**
|
23
|
+
* XSLT_REGISTER_FUNCTION_LOOKUP:
|
24
|
+
*
|
25
|
+
* Registering macro, not general purpose at all but used in different modules.
|
26
|
+
*/
|
27
|
+
#define XSLT_REGISTER_FUNCTION_LOOKUP(ctxt) \
|
28
|
+
xmlXPathRegisterFuncLookup((ctxt)->xpathCtxt, \
|
29
|
+
(xmlXPathFuncLookupFunc) xsltXPathFunctionLookup, \
|
30
|
+
(void *)(ctxt->xpathCtxt));
|
31
|
+
|
32
|
+
XSLTPUBFUN xmlXPathFunction XSLTCALL
|
33
|
+
xsltXPathFunctionLookup (xmlXPathContextPtr ctxt,
|
34
|
+
const xmlChar *name,
|
35
|
+
const xmlChar *ns_uri);
|
36
|
+
|
37
|
+
/*
|
38
|
+
* Interfaces for the functions implementations.
|
39
|
+
*/
|
40
|
+
|
41
|
+
XSLTPUBFUN void XSLTCALL
|
42
|
+
xsltDocumentFunction (xmlXPathParserContextPtr ctxt,
|
43
|
+
int nargs);
|
44
|
+
XSLTPUBFUN void XSLTCALL
|
45
|
+
xsltKeyFunction (xmlXPathParserContextPtr ctxt,
|
46
|
+
int nargs);
|
47
|
+
XSLTPUBFUN void XSLTCALL
|
48
|
+
xsltUnparsedEntityURIFunction (xmlXPathParserContextPtr ctxt,
|
49
|
+
int nargs);
|
50
|
+
XSLTPUBFUN void XSLTCALL
|
51
|
+
xsltFormatNumberFunction (xmlXPathParserContextPtr ctxt,
|
52
|
+
int nargs);
|
53
|
+
XSLTPUBFUN void XSLTCALL
|
54
|
+
xsltGenerateIdFunction (xmlXPathParserContextPtr ctxt,
|
55
|
+
int nargs);
|
56
|
+
XSLTPUBFUN void XSLTCALL
|
57
|
+
xsltSystemPropertyFunction (xmlXPathParserContextPtr ctxt,
|
58
|
+
int nargs);
|
59
|
+
XSLTPUBFUN void XSLTCALL
|
60
|
+
xsltElementAvailableFunction (xmlXPathParserContextPtr ctxt,
|
61
|
+
int nargs);
|
62
|
+
XSLTPUBFUN void XSLTCALL
|
63
|
+
xsltFunctionAvailableFunction (xmlXPathParserContextPtr ctxt,
|
64
|
+
int nargs);
|
65
|
+
|
66
|
+
/*
|
67
|
+
* And the registration
|
68
|
+
*/
|
69
|
+
|
70
|
+
XSLTPUBFUN void XSLTCALL
|
71
|
+
xsltRegisterAllFunctions (xmlXPathContextPtr ctxt);
|
72
|
+
|
73
|
+
#ifdef __cplusplus
|
74
|
+
}
|
75
|
+
#endif
|
76
|
+
|
77
|
+
#endif /* __XML_XSLT_FUNCTIONS_H__ */
|
78
|
+
|
@@ -0,0 +1,75 @@
|
|
1
|
+
/*
|
2
|
+
* Summary: interface for the XSLT import support
|
3
|
+
* Description: macros and fuctions needed to implement and
|
4
|
+
* access the import tree
|
5
|
+
*
|
6
|
+
* Copy: See Copyright for the status of this software.
|
7
|
+
*
|
8
|
+
* Author: Daniel Veillard
|
9
|
+
*/
|
10
|
+
|
11
|
+
#ifndef __XML_XSLT_IMPORTS_H__
|
12
|
+
#define __XML_XSLT_IMPORTS_H__
|
13
|
+
|
14
|
+
#include <libxml/tree.h>
|
15
|
+
#include "xsltexports.h"
|
16
|
+
#include "xsltInternals.h"
|
17
|
+
|
18
|
+
#ifdef __cplusplus
|
19
|
+
extern "C" {
|
20
|
+
#endif
|
21
|
+
|
22
|
+
/**
|
23
|
+
* XSLT_GET_IMPORT_PTR:
|
24
|
+
*
|
25
|
+
* A macro to import pointers from the stylesheet cascading order.
|
26
|
+
*/
|
27
|
+
#define XSLT_GET_IMPORT_PTR(res, style, name) { \
|
28
|
+
xsltStylesheetPtr st = style; \
|
29
|
+
res = NULL; \
|
30
|
+
while (st != NULL) { \
|
31
|
+
if (st->name != NULL) { res = st->name; break; } \
|
32
|
+
st = xsltNextImport(st); \
|
33
|
+
}}
|
34
|
+
|
35
|
+
/**
|
36
|
+
* XSLT_GET_IMPORT_INT:
|
37
|
+
*
|
38
|
+
* A macro to import intergers from the stylesheet cascading order.
|
39
|
+
*/
|
40
|
+
#define XSLT_GET_IMPORT_INT(res, style, name) { \
|
41
|
+
xsltStylesheetPtr st = style; \
|
42
|
+
res = -1; \
|
43
|
+
while (st != NULL) { \
|
44
|
+
if (st->name != -1) { res = st->name; break; } \
|
45
|
+
st = xsltNextImport(st); \
|
46
|
+
}}
|
47
|
+
|
48
|
+
/*
|
49
|
+
* Module interfaces
|
50
|
+
*/
|
51
|
+
XSLTPUBFUN int XSLTCALL
|
52
|
+
xsltParseStylesheetImport(xsltStylesheetPtr style,
|
53
|
+
xmlNodePtr cur);
|
54
|
+
XSLTPUBFUN int XSLTCALL
|
55
|
+
xsltParseStylesheetInclude
|
56
|
+
(xsltStylesheetPtr style,
|
57
|
+
xmlNodePtr cur);
|
58
|
+
XSLTPUBFUN xsltStylesheetPtr XSLTCALL
|
59
|
+
xsltNextImport (xsltStylesheetPtr style);
|
60
|
+
XSLTPUBFUN int XSLTCALL
|
61
|
+
xsltNeedElemSpaceHandling(xsltTransformContextPtr ctxt);
|
62
|
+
XSLTPUBFUN int XSLTCALL
|
63
|
+
xsltFindElemSpaceHandling(xsltTransformContextPtr ctxt,
|
64
|
+
xmlNodePtr node);
|
65
|
+
XSLTPUBFUN xsltTemplatePtr XSLTCALL
|
66
|
+
xsltFindTemplate (xsltTransformContextPtr ctxt,
|
67
|
+
const xmlChar *name,
|
68
|
+
const xmlChar *nameURI);
|
69
|
+
|
70
|
+
#ifdef __cplusplus
|
71
|
+
}
|
72
|
+
#endif
|
73
|
+
|
74
|
+
#endif /* __XML_XSLT_IMPORTS_H__ */
|
75
|
+
|
@@ -0,0 +1,53 @@
|
|
1
|
+
/*
|
2
|
+
* Summary: interface for the key matching used in key() and template matches.
|
3
|
+
* Description: implementation of the key mechanims.
|
4
|
+
*
|
5
|
+
* Copy: See Copyright for the status of this software.
|
6
|
+
*
|
7
|
+
* Author: Daniel Veillard
|
8
|
+
*/
|
9
|
+
|
10
|
+
#ifndef __XML_XSLT_KEY_H__
|
11
|
+
#define __XML_XSLT_KEY_H__
|
12
|
+
|
13
|
+
#include <libxml/xpath.h>
|
14
|
+
#include "xsltexports.h"
|
15
|
+
#include "xsltInternals.h"
|
16
|
+
|
17
|
+
#ifdef __cplusplus
|
18
|
+
extern "C" {
|
19
|
+
#endif
|
20
|
+
|
21
|
+
/**
|
22
|
+
* NODE_IS_KEYED:
|
23
|
+
*
|
24
|
+
* check for bit 15 set
|
25
|
+
*/
|
26
|
+
#define NODE_IS_KEYED (1 >> 15)
|
27
|
+
|
28
|
+
XSLTPUBFUN int XSLTCALL
|
29
|
+
xsltAddKey (xsltStylesheetPtr style,
|
30
|
+
const xmlChar *name,
|
31
|
+
const xmlChar *nameURI,
|
32
|
+
const xmlChar *match,
|
33
|
+
const xmlChar *use,
|
34
|
+
xmlNodePtr inst);
|
35
|
+
XSLTPUBFUN xmlNodeSetPtr XSLTCALL
|
36
|
+
xsltGetKey (xsltTransformContextPtr ctxt,
|
37
|
+
const xmlChar *name,
|
38
|
+
const xmlChar *nameURI,
|
39
|
+
const xmlChar *value);
|
40
|
+
XSLTPUBFUN void XSLTCALL
|
41
|
+
xsltInitCtxtKeys (xsltTransformContextPtr ctxt,
|
42
|
+
xsltDocumentPtr doc);
|
43
|
+
XSLTPUBFUN void XSLTCALL
|
44
|
+
xsltFreeKeys (xsltStylesheetPtr style);
|
45
|
+
XSLTPUBFUN void XSLTCALL
|
46
|
+
xsltFreeDocumentKeys (xsltDocumentPtr doc);
|
47
|
+
|
48
|
+
#ifdef __cplusplus
|
49
|
+
}
|
50
|
+
#endif
|
51
|
+
|
52
|
+
#endif /* __XML_XSLT_H__ */
|
53
|
+
|
@@ -0,0 +1,30 @@
|
|
1
|
+
/*
|
2
|
+
* Summary: internal header only used during the compilation of libxslt
|
3
|
+
* Description: internal header only used during the compilation of libxslt
|
4
|
+
*
|
5
|
+
* Copy: See Copyright for the status of this software.
|
6
|
+
*
|
7
|
+
* Author: Daniel Veillard
|
8
|
+
*/
|
9
|
+
|
10
|
+
#ifndef __XSLT_LIBXSLT_H__
|
11
|
+
#define __XSLT_LIBXSLT_H__
|
12
|
+
|
13
|
+
#if defined(WIN32) && !defined (__CYGWIN__) && !defined (__MINGW32__)
|
14
|
+
#include <win32config.h>
|
15
|
+
#else
|
16
|
+
#include "config.h"
|
17
|
+
#endif
|
18
|
+
|
19
|
+
#include <libxslt/xsltconfig.h>
|
20
|
+
#include <libxml/xmlversion.h>
|
21
|
+
|
22
|
+
#if !defined LIBXSLT_PUBLIC
|
23
|
+
#if (defined (__CYGWIN__) || defined _MSC_VER) && !defined IN_LIBXSLT && !defined LIBXSLT_STATIC
|
24
|
+
#define LIBXSLT_PUBLIC __declspec(dllimport)
|
25
|
+
#else
|
26
|
+
#define LIBXSLT_PUBLIC
|
27
|
+
#endif
|
28
|
+
#endif
|
29
|
+
|
30
|
+
#endif /* ! __XSLT_LIBXSLT_H__ */
|
@@ -0,0 +1,68 @@
|
|
1
|
+
/*
|
2
|
+
* Summary: interface for the XSLT namespace handling
|
3
|
+
* Description: set of function easing the processing and generation
|
4
|
+
* of namespace nodes in XSLT.
|
5
|
+
*
|
6
|
+
* Copy: See Copyright for the status of this software.
|
7
|
+
*
|
8
|
+
* Author: Daniel Veillard
|
9
|
+
*/
|
10
|
+
|
11
|
+
#ifndef __XML_XSLT_NAMESPACES_H__
|
12
|
+
#define __XML_XSLT_NAMESPACES_H__
|
13
|
+
|
14
|
+
#include <libxml/tree.h>
|
15
|
+
#include "xsltexports.h"
|
16
|
+
|
17
|
+
#ifdef __cplusplus
|
18
|
+
extern "C" {
|
19
|
+
#endif
|
20
|
+
|
21
|
+
/*
|
22
|
+
* Used within nsAliases hashtable when the default namespace is required
|
23
|
+
* but it's not been explicitly defined
|
24
|
+
*/
|
25
|
+
/**
|
26
|
+
* UNDEFINED_DEFAULT_NS:
|
27
|
+
*
|
28
|
+
* Special value for undefined namespace, internal
|
29
|
+
*/
|
30
|
+
#define UNDEFINED_DEFAULT_NS (const xmlChar *) -1L
|
31
|
+
|
32
|
+
XSLTPUBFUN void XSLTCALL
|
33
|
+
xsltNamespaceAlias (xsltStylesheetPtr style,
|
34
|
+
xmlNodePtr node);
|
35
|
+
XSLTPUBFUN xmlNsPtr XSLTCALL
|
36
|
+
xsltGetNamespace (xsltTransformContextPtr ctxt,
|
37
|
+
xmlNodePtr cur,
|
38
|
+
xmlNsPtr ns,
|
39
|
+
xmlNodePtr out);
|
40
|
+
XSLTPUBFUN xmlNsPtr XSLTCALL
|
41
|
+
xsltGetPlainNamespace (xsltTransformContextPtr ctxt,
|
42
|
+
xmlNodePtr cur,
|
43
|
+
xmlNsPtr ns,
|
44
|
+
xmlNodePtr out);
|
45
|
+
XSLTPUBFUN xmlNsPtr XSLTCALL
|
46
|
+
xsltGetSpecialNamespace (xsltTransformContextPtr ctxt,
|
47
|
+
xmlNodePtr cur,
|
48
|
+
const xmlChar *URI,
|
49
|
+
const xmlChar *prefix,
|
50
|
+
xmlNodePtr out);
|
51
|
+
XSLTPUBFUN xmlNsPtr XSLTCALL
|
52
|
+
xsltCopyNamespace (xsltTransformContextPtr ctxt,
|
53
|
+
xmlNodePtr elem,
|
54
|
+
xmlNsPtr ns);
|
55
|
+
XSLTPUBFUN xmlNsPtr XSLTCALL
|
56
|
+
xsltCopyNamespaceList (xsltTransformContextPtr ctxt,
|
57
|
+
xmlNodePtr node,
|
58
|
+
xmlNsPtr cur);
|
59
|
+
XSLTPUBFUN void XSLTCALL
|
60
|
+
xsltFreeNamespaceAliasHashes
|
61
|
+
(xsltStylesheetPtr style);
|
62
|
+
|
63
|
+
#ifdef __cplusplus
|
64
|
+
}
|
65
|
+
#endif
|
66
|
+
|
67
|
+
#endif /* __XML_XSLT_NAMESPACES_H__ */
|
68
|
+
|
data/test/file_indexing/index_agent_test/libxslt-1.1.26.win32/include/libxslt/numbersInternals.h
ADDED
@@ -0,0 +1,69 @@
|
|
1
|
+
/*
|
2
|
+
* Summary: Implementation of the XSLT number functions
|
3
|
+
* Description: Implementation of the XSLT number functions
|
4
|
+
*
|
5
|
+
* Copy: See Copyright for the status of this software.
|
6
|
+
*
|
7
|
+
* Author: Bjorn Reese <breese@users.sourceforge.net> and Daniel Veillard
|
8
|
+
*/
|
9
|
+
|
10
|
+
#ifndef __XML_XSLT_NUMBERSINTERNALS_H__
|
11
|
+
#define __XML_XSLT_NUMBERSINTERNALS_H__
|
12
|
+
|
13
|
+
#include <libxml/tree.h>
|
14
|
+
#include "xsltexports.h"
|
15
|
+
|
16
|
+
#ifdef __cplusplus
|
17
|
+
extern "C" {
|
18
|
+
#endif
|
19
|
+
|
20
|
+
/**
|
21
|
+
* xsltNumberData:
|
22
|
+
*
|
23
|
+
* This data structure is just a wrapper to pass xsl:number data in.
|
24
|
+
*/
|
25
|
+
typedef struct _xsltNumberData xsltNumberData;
|
26
|
+
typedef xsltNumberData *xsltNumberDataPtr;
|
27
|
+
|
28
|
+
struct _xsltNumberData {
|
29
|
+
const xmlChar *level;
|
30
|
+
const xmlChar *count;
|
31
|
+
const xmlChar *from;
|
32
|
+
const xmlChar *value;
|
33
|
+
const xmlChar *format;
|
34
|
+
int has_format;
|
35
|
+
int digitsPerGroup;
|
36
|
+
int groupingCharacter;
|
37
|
+
int groupingCharacterLen;
|
38
|
+
xmlDocPtr doc;
|
39
|
+
xmlNodePtr node;
|
40
|
+
|
41
|
+
/*
|
42
|
+
* accelerators
|
43
|
+
*/
|
44
|
+
};
|
45
|
+
|
46
|
+
/**
|
47
|
+
* xsltFormatNumberInfo,:
|
48
|
+
*
|
49
|
+
* This data structure lists the various parameters needed to format numbers.
|
50
|
+
*/
|
51
|
+
typedef struct _xsltFormatNumberInfo xsltFormatNumberInfo;
|
52
|
+
typedef xsltFormatNumberInfo *xsltFormatNumberInfoPtr;
|
53
|
+
|
54
|
+
struct _xsltFormatNumberInfo {
|
55
|
+
int integer_hash; /* Number of '#' in integer part */
|
56
|
+
int integer_digits; /* Number of '0' in integer part */
|
57
|
+
int frac_digits; /* Number of '0' in fractional part */
|
58
|
+
int frac_hash; /* Number of '#' in fractional part */
|
59
|
+
int group; /* Number of chars per display 'group' */
|
60
|
+
int multiplier; /* Scaling for percent or permille */
|
61
|
+
char add_decimal; /* Flag for whether decimal point appears in pattern */
|
62
|
+
char is_multiplier_set; /* Flag to catch multiple occurences of percent/permille */
|
63
|
+
char is_negative_pattern;/* Flag for processing -ve prefix/suffix */
|
64
|
+
};
|
65
|
+
|
66
|
+
#ifdef __cplusplus
|
67
|
+
}
|
68
|
+
#endif
|
69
|
+
#endif /* __XML_XSLT_NUMBERSINTERNALS_H__ */
|