blob: 906e2c3ec9301c126694f850b6fa781d743318c9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
// -*- C++ -*-
//=============================================================================
/**
* @file Debug_Attributes_Builder.h
*
* $Id$
*
* @author Nanbor Wang <nanbor@cs.wustl.edu>
*/
//=============================================================================
#ifndef _ACEXML_DEBUG_ATTRIBUTES_BUILDER_H_
#define _ACEXML_DEBUG_ATTRIBUTES_BUILDER_H_
#include "common/Attributes_Def_Builder.h"
#include "parser/debug_validator/Debug_DTD_Manager_Export.h"
/**
* @ class ACEXML_Debug_Attribute_Builder Debug_Attributes_Builder.h "parser/debug_validator/Debug_Attributes_Builder.h"
*
* This class prints out the Attribute definition for debugging purpose.
*/
class ACEXML_DEBUG_DTD_MANAGER_Export ACEXML_Debug_Attribute_Builder
: public ACEXML_Attribute_Def_Builder
{
public:
ACEXML_Debug_Attribute_Builder ();
virtual ~ACEXML_Debug_Attribute_Builder ();
/**
* Set the attribute type.
*/
virtual int setAttType (const ATT_TYPE type,
ACEXML_Env &xmlenv)
// ACE_THORW_SPEC ((ACEXML_SAXException))
;
/**
* Insert an element for NOTATION or ENUMERATION type attribute.
*/
virtual int insertList (const ACEXML_Char Name,
ACEXML_Env &xmlenv)
// ACE_THORW_SPEC ((ACEXML_SAXException))
;
/**
* Set default attribute declaration.
*/
virtual int setDefault (const DEFAULT_DECL def,
const ACEXML_Char *value,
ACEXML_Env &xmlenv)
// ACE_THORW_SPEC ((ACEXML_SAXException))
;
/**
* Check validity of the current attribute definition being built.
*
* @retval 0 if the attribute is not a valid combo.
*/
virtual int validAttr (void);
private:
/// Type of attribute.
ATT_TYPE type_;
/// Default value type.
DEFAULT_DECL default_decl_;
};
/**
* @ class ACEXML_Debug_Attributes_Builder Debug_Attributes_Builder.h "parser/debug_validator/Debug_Attributes_Builder.h"
*
* This class prints out Attribute definitions for debugging purpose.
*/
class ACEXML_DEBUG_DTD_MANAGER_Export ACEXML_Debug_Attributes_Builder
: public ACEXML_Attributes_Def_Builder
{
public:
ACEXML_Debug_Attributes_Builder ();
virtual ~ACEXML_Debug_Attributes_Builder ();
/**
* Set the element name that the attribute builder applies.
*
* @retval 0 if valid, -1 otherwise.
*/
virtual int setElement (const ACEXML_Char *namespaceURI,
const ACEXML_Char *localName,
const ACEXML_Char *qName,
ACEXML_Env &xmlenv)
// ACE_THROW_SPEC ((ACEXML_SAXException))
;
/**
* Acquire an Attribute_Builder.
*/
virtual ACEXML_Attribute_Def_Builder *getAttribute_Def_Builder ();
/**
* Add a definition for one attribute.
*/
virtual int insertAttribute (ACEXML_Attribute_Def_Builder *def,
ACEXML_Env &xmlenv);
};
#endif /* _ACEXML_DEBUG_ATTRIBUTES_BUILDER_H_ */
|