1
0
mirror of https://github.com/Halofreak1990/XFXFramework synced 2024-12-26 13:49:34 +01:00

195 lines
4.5 KiB
C
Raw Permalink Normal View History

/*****************************************************************************
* Enums.h *
* *
* System::Xml::XPath Enumerations definition file. *
* Copyright (c) XFX Team. All rights reserved. *
*****************************************************************************/
#ifndef _SYSTEM_XML_XPATH_ENUMS_
#define _SYSTEM_XML_XPATH_ENUMS_
namespace System
{
namespace Xml
{
namespace XPath
{
struct XmlCaseOrder
{
enum type
{
/**
* Ignore the case.
*/
None,
/**
* Uppercase letters are sorted before lowercase letters.
*/
UpperFirst,
/**
* Lowercase letters are sorted before uppercase letters.
*/
LowerFirst
};
};
struct XmlDataType
{
enum type
{
/**
* Values are sorted alphabetically.
*/
Text = 1,
/**
* Values are sorted numerically.
*/
Number
};
};
struct XmlSortOrder
{
enum type
{
/**
* Nodes are sorted in ascending order. For example, if the numbers 1,2,3, and 4 are sorted in ascending order, they appear as 1,2,3,4.
*/
Ascending = 1,
/**
* Nodes are sorted in descending order. For example, if the numbers 1,2,3, and 4 are sorted in descending order, they appear as, 4,3,2,1.
*/
Descending
};
};
struct XPathNamespaceScope
{
enum type
{
/**
* Returns all namespaces defined in the scope of the current node. This includes the xmlns:xml namespace which is always declared implicitly. The order of the namespaces returned is not defined.
*/
All,
/**
* Returns all namespaces defined in the scope of the current node, excluding the xmlns:xml namespace. The xmlns:xml namespace is always declared implicitly. The order of the namespaces returned is not defined.
*/
ExcludeXml,
/**
* Returns all namespaces that are defined locally at the current node.
*/
Local
};
};
struct XPathNodeType
{
enum type
{
/**
* The root node of the XML document or node tree.
*/
Root,
/**
* An element, such as <element>.
*/
Element,
/**
* An attribute, such as id='123'.
*/
Attribute,
/**
* A namespace, such as xmlns="namespace".
*/
Namespace,
/**
* The text content of a node. Equivalent to the Document Object Model (DOM) Text and CDATA node types. Contains at least one character.
*/
Text,
/**
* A node with white space characters and xml:space set to preserve.
*/
SignificantWhitespace,
/**
* A node with only white space characters and no significant white space. White space characters are #x20, #x9, #xD, or #xA.
*/
Whitespace,
/**
* A processing instruction, such as <?pi test?>. This does not include XML declarations, which are not visible to the System::Xml::XPath::XPathNavigator class.
*/
ProcessingInstruction,
/**
* A comment, such as <!-- my comment -->
*/
Comment,
/**
* Any of the System::Xml::XPath::XPathNodeType node types.
*/
All
};
};
struct XPathResultType
{
enum type
{
/**
* Any of the XPath node types.
*/
Any = 5,
/**
* A System::Boolean true or false value.
*/
Boolean = 2,
/**
* The expression does not evaluate to the correct XPath type.
*/
Error = 6,
/**
* A tree fragment.
*/
Navigator = 1,
/**
* A node collection.
*/
NodeSet = 3,
/**
* A numeric value.
*/
Number = 0,
/**
* A System::String value.
*/
String = 4,
};
};
/**
* Specifies the sort order for uppercase and lowercase letters.
*/
typedef XmlCaseOrder::type XmlCaseOrder_t;
/**
* Specifies the data type used to determine sort order.
*/
typedef XmlDataType::type XmlDataType_t;
/**
* Specifies the sort order.
*/
typedef XmlSortOrder::type XmlSortOrder_t;
/**
* Defines the namespace scope.
*/
typedef XPathNamespaceScope::type XPathNamespaceScope_t;
/**
* Defines the XPath node types that can be returned from the System::Xml::XPath::XPathNavigator class.
*/
typedef XPathNodeType::type XPathNodeType_t;
/**
* Specifies the return type of the XPath expression.
*/
typedef XPathResultType::type XPathResultType_t;
}
}
}
#endif //_SYSTEM_XML_XPATH_ENUMS_