/* File automatically generated by SOAdvancedDissector.py More information at http://indefero.soutade.fr/p/soadvanceddissector */ #ifndef _XPATH_H #define _XPATH_H #include namespace mdom { class Node; class Reference; }; namespace xpath { class Parser; class AttributeParser; class AxesNodeTest; class Context; class CurlyBracketAttributeParser; class CurlyBracketExpression; class Dependency; class DependencyType; class DynamicContext; class ExplicitReference; class Expression; class Function; class NodeTest; class NodeTypeTest; class Operator; class ResultType; class Root; class Scan; class SimpleMatch; class SimpleUserFunction; class StaticContext; class Step; class StepDynamicContext; class Variable; class XPathIdMatch; class XPathVTable; class YaccParser; class Error {}; class Token {}; class Parser: public uft::ValueParser { public: virtual void parse(uft::ParserContext*, uft::Value const&) const; virtual void getValidStartChars() const; virtual void handlerParseFailure(uft::ParserContext*, uft::Value const&) const; }; class AttributeParser: public xpath::Parser { public: virtual void parse(uft::ParserContext*, uft::Value const&) const; virtual void getValidStartChars() const; virtual void handlerParseFailure(uft::ParserContext*, uft::Value const&) const; }; class AxesNodeTest { public: AxesNodeTest(uft::String const&, uft::Value const&); void InitVirtualTables(); void getSourceDOMExpr(uft::Set const&); void getSourceDOMExpr_impl(uft::Value const&, uft::Set const&); void isAxesDefault(); void isValidNode(mdom::Node*, xpath::Context*) const; void query(uft::Value const&, void*); void setAxes(uft::String const&); void setAxesAsChild(); void setAxesAsDescendantOrSelf(); void staticInit(); void toString(); void* s_descriptor; }; class Context { public: Context(mdom::Node const&, bool, xpath::StaticContext*); // ~DynamicContextHelper(); virtual ~Context(); virtual void handleExpressionError(uft::String); // void DynamicContextHelper(xpath::Context*, xpath::DynamicContext*); // void DynamicContextHelper(xpath::Context*, xpath::DynamicContext*, mdom::Node const&); void getDynamicContext(xpath::Expression const&, bool); void incrementCurrentPosition(uft::Value const&); void removeDynamicContext(uft::Value const&); void setDynamicContext(uft::Value const&, uft::Value const&, xpath::StepDynamicContext*); void setDynamicContext(uft::Value const&, xpath::DynamicContext*); void setInitialContext(unsigned int, unsigned int); void setReferenceNode(mdom::Node const&); }; class CurlyBracketAttributeParser: public xpath::Parser { public: virtual void parse(uft::ParserContext*, uft::Value const&) const; virtual void getValidStartChars() const; virtual void handlerParseFailure(uft::ParserContext*, uft::Value const&) const; }; class CurlyBracketExpression { public: void staticInit(); void* s_descriptor; }; class Dependency { public: }; class DependencyType { public: }; class DynamicContext { public: DynamicContext(unsigned int, unsigned int); DynamicContext(xpath::Expression const&, bool); virtual ~DynamicContext(); virtual void getContextSize(); virtual void resetContext(mdom::Node const&); }; class ExplicitReference { public: ExplicitReference(mdom::Reference const&); void getDependencyType(xpath::DependencyType, xpath::Dependency*); void getDependencyType_impl(uft::Value const&, xpath::DependencyType, xpath::Dependency*); void isNodeInNodeset_impl(uft::Value const&, xpath::Context*, mdom::Node*); void iterate(xpath::Context*, mdom::Node*); void iterate_impl(uft::Value const&, xpath::Context*, mdom::Node*); void query(uft::Value const&, void*); void staticInit(); void toString(); void* ExplicitReference_vtable; void* s_descriptor; }; class Expression { public: Expression(char const*); Expression(uft::URL const&); Expression(uft::Value const&); ~Expression(); void evaluate_impl(mdom::Node const&, xpath::Context*, xpath::ResultType) const; void finishIteration_impl(xpath::Context*) const; void getAttributeParser(); void getCurlyBracketAttributeParser(); void getDependencyType_impl(xpath::DependencyType, xpath::Dependency*) const; void getExpressionForIDMatch(uft::String const&, uft::String const&); void getExpressionForNodeTypes(uft::String const&, unsigned int*, unsigned int, bool); void getExpressionType_impl() const; void getParser(); void getSourceDOMExpr_impl(uft::Set const&) const; // void gotoPreviousStep(mdom::Node const*, uft::sref&); void isNodeInNodeset_impl(xpath::Context*, mdom::Node*) const; void isSimpleMatch(xpath::SimpleMatch*, bool); void iterate_impl(xpath::Context*, mdom::Node*) const; void match(mdom::Node const*, bool); // void matchSingleNode(mdom::Node const*, uft::sref&); void toString() const; }; class Function { public: Function(uft::QName const&, uft::Vector const&); void evaluate_impl(mdom::Node const&, xpath::Context*, xpath::ResultType); void evaluate_impl(uft::Value const&, mdom::Node const&, xpath::Context*, xpath::ResultType); void getDependencyType(xpath::DependencyType, xpath::Dependency*); void getDependencyType_impl(uft::Value const&, xpath::DependencyType, xpath::Dependency*); void getExpressionType(); void getExpressionType_impl(uft::Value const&); void iterate_impl(uft::Value const&, xpath::Context*, mdom::Node*); void iterate_impl(xpath::Context*, mdom::Node*); void query(uft::Value const&, void*); void staticInit(); void toString(); void* XPathFunction_vtable; void* s_descriptor; }; class NodeTest { public: NodeTest(uft::String); void isValidNode(mdom::Node*); void staticInit(); void toString(); void* s_descriptor; }; class NodeTypeTest { public: NodeTypeTest(unsigned int*, unsigned int, bool); NodeTypeTest(unsigned int, uft::String); void isValidNode(mdom::Node*); void staticInit(); void toString(); void* s_descriptor; }; class Operator { public: Operator(uft::String const&, uft::Value const&, uft::Value const&); void andFn(mdom::Node const&, xpath::Context*, xpath::ResultType); void equalFn(mdom::Node const&, xpath::Context*, xpath::ResultType); void evaluate(mdom::Node const&, xpath::Context*, xpath::ResultType); void evaluate_impl(uft::Value const&, mdom::Node const&, xpath::Context*, xpath::ResultType); void getDependencyType(xpath::DependencyType, xpath::Dependency*); void getDependencyType_impl(uft::Value const&, xpath::DependencyType, xpath::Dependency*); void getExpressionType(); void getExpressionType_impl(uft::Value const&); void getSourceDOMExpr(uft::Set const&); void getSourceDOMExpr_impl(uft::Value const&, uft::Set const&); void getValues(uft::Value&, uft::Value&, mdom::Node const&, xpath::Context*, xpath::ResultType); void greaterFn(mdom::Node const&, xpath::Context*, xpath::ResultType); void isNodeInNodeset(xpath::Context*, mdom::Node*); void isNodeInNodeset_impl(uft::Value const&, xpath::Context*, mdom::Node*); void isValidBinaryOperation(xpath::Context*); void lessFn(mdom::Node const&, xpath::Context*, xpath::ResultType); void numberCompare(mdom::Node const&, xpath::Context*, xpath::ResultType, int); void orFn(mdom::Node const&, xpath::Context*, xpath::ResultType); void query(uft::Value const&, void*); void staticInit(); void stringCompare(mdom::Node const&, xpath::Context*, xpath::ResultType); void toString(); void* XPathOperator_vtable; void* s_descriptor; }; class ResultType { public: }; class Root { public: Root(); void getDependencyType(xpath::DependencyType, xpath::Dependency*); void getDependencyType_impl(uft::Value const&, xpath::DependencyType, xpath::Dependency*); void isNodeInNodeset_impl(uft::Value const&, xpath::Context*, mdom::Node*); void iterate(xpath::Context*, mdom::Node*); void iterate_impl(uft::Value const&, xpath::Context*, mdom::Node*); void query(uft::Value const&, void*); void staticInit(); void toString(); void* XPathRoot_vtable; void* s_descriptor; }; class Scan { public: Scan(char const*, char const*); virtual ~Scan(); void getDebugErrMsg(xpath::Error) const; void getError() const; void getOptionFlags() const; void isNCNameChar(char); void nextToken(char const**, char const**, char const**); void safeMatch(char const*, char const*, char const**); void safePeekNCNameTo(char const*, char, bool); void setOptionFlags(long); void skipTo(char const*, char); void terminalToToken(char); void* sCharTest; void* sType1; }; class SimpleMatch { public: ~SimpleMatch(); }; class SimpleUserFunction { public: void staticInit(); void* s_descriptor; }; class StaticContext { public: virtual void virtfunc8() = 0; virtual void virtfunc12() = 0; }; class Step { public: Step(uft::String const&, uft::Value const&); Step(xpath::Expression&); Step(xpath::Root&); void evaluate(mdom::Node const&, xpath::Context*, xpath::ResultType); void evaluate_impl(uft::Value const&, mdom::Node const&, xpath::Context*, xpath::ResultType); void getDependencyType(xpath::DependencyType, xpath::Dependency*); void getDependencyType_impl(uft::Value const&, xpath::DependencyType, xpath::Dependency*); void getDynamicContext(xpath::Context*); void getExpressionType(); void getExpressionType_impl(uft::Value const&); void getRootAxesNodeTest(); void getRootStep(); void getSourceDOMExpr(uft::Set const&); void getSourceDOMExpr_impl(uft::Value const&, uft::Set const&); void isNodeInNodeset(xpath::Context*, mdom::Node*); void isNodeInNodeset_impl(uft::Value const&, xpath::Context*, mdom::Node*); void iterate(xpath::Context*, mdom::Node*); void iterate_impl(uft::Value const&, xpath::Context*, mdom::Node*); void query(uft::Value const&, void*); void removeDynamicContext(xpath::Context*) const; void setPrevStep(xpath::Step&); void staticInit(); void toString(); void* XPathStep_vtable; void* s_descriptor; }; class StepDynamicContext: public xpath::DynamicContext { public: StepDynamicContext(xpath::Context*, uft::Value const&, uft::Value const&); virtual ~StepDynamicContext(); virtual void getContextSize(); virtual void resetContext(mdom::Node const&); void getContextPosition(); void getNext(mdom::Node&); void getNextForCurrentExpression(mdom::Node&); void getPrevDynamicContextInternal(); void isNodeInNodeset(mdom::Node&); void setCurrentNode(mdom::Node const&); }; class Variable { public: Variable(uft::QName const&); void evaluate_impl(mdom::Node const&, xpath::Context*, xpath::ResultType); void evaluate_impl(uft::Value const&, mdom::Node const&, xpath::Context*, xpath::ResultType); void getDependencyType(xpath::DependencyType, xpath::Dependency*); void getDependencyType_impl(uft::Value const&, xpath::DependencyType, xpath::Dependency*); void getExpressionType(); void getExpressionType_impl(uft::Value const&); void iterate_impl(uft::Value const&, xpath::Context*, mdom::Node*); void iterate_impl(xpath::Context*, mdom::Node*); void query(uft::Value const&, void*); void staticInit(); void toString(); void* XPathVariable_vtable; void* s_descriptor; }; class XPathIdMatch { public: XPathIdMatch(uft::Value const&); void evaluate_impl(uft::Value const&, mdom::Node const&, xpath::Context*, xpath::ResultType); void query(uft::Value const&, void*); void staticInit(); void toString(); void* XPathIdMatch_vtable; void* s_descriptor; }; class XPathVTable { public: }; class YaccParser { public: YaccParser(char const*, uft::ParserContext*); ~YaccParser(); void createXPathObject(); void getObjectPointer(uft::Value*&, bool); void getReturnValueObject(); void parse(); void performLexicalAnalysis(uft::Value*&); void setReturnValueObject(uft::Value&); }; void GetOneArgument(uft::Value const&, mdom::Node const&, xpath::Context*, uft::Value&, xpath::ResultType); void SubstituteFunctionDefaults(xpath::XPathVTable*, unsigned int); void booleanValue(uft::Value const&); void convertNodeValue(mdom::Node const&, xpath::Context*, xpath::ResultType); void convertValue(uft::Value const&, xpath::ResultType); void createExplicitReference(mdom::Node const&); void evalBooleanFunction(uft::Value const&, mdom::Node const&, xpath::Context*, xpath::ResultType); void evalNumberFunction(uft::Value const&, mdom::Node const&, xpath::Context*, xpath::ResultType); void evalStringFunction(uft::Value const&, mdom::Node const&, xpath::Context*, xpath::ResultType); void evaluate_through_iterate_impl(uft::Value const&, mdom::Node const&, xpath::Context*, xpath::ResultType); void extractExpression(uft::Value const&); void extractXPathExpression(uft::Value const&); void getAxisName(xpath::Token); void getCSSAbsoluteExpression(xpath::Expression const&); void getCSSAttributeExpression(xpath::Expression const&, xpath::Expression const&); void getCSSChildExpression(xpath::Expression const&, xpath::Expression const&); void getCSSDescendantExpression(xpath::Expression const&, xpath::Expression const&); void getCSSDirectAdjacentExpression(xpath::Expression const&, xpath::Expression const&); void getCSSEqualsAttributeExpression(uft::QName const&, uft::String const&); void getCSSFirstChildExpression(uft::QName const&); void getCSSIndirectAdjacentExpression(xpath::Expression const&, xpath::Expression const&); void getCSSMatchHypenSeparatedAttributeExpression(uft::QName const&, uft::String const&); void getCSSMatchWholeWordAttributeExpression(uft::QName const&, uft::String const&); void getCSSTypeExpression(uft::QName const&); void getCSSUniversalExpression(); void getDependencyTypeFromArguments(uft::Value const&, xpath::DependencyType, xpath::Dependency*); void getDependencyTypeNone(uft::Value const&, xpath::DependencyType, xpath::Dependency*); void getDependencyTypeOutsideSubtree(uft::Value const&, xpath::DependencyType, xpath::Dependency*); void getExpressionTypeImplAttribute(uft::Value const&); void getExpressionTypeImplBoolean(uft::Value const&); void getExpressionTypeImplNamespace(uft::Value const&); void getExpressionTypeImplNodeset(uft::Value const&); void getExpressionTypeImplNumber(uft::Value const&); void getExpressionTypeImplString(uft::Value const&); void getFunctionVTable(uft::QName const&); void getSourceDOMExprSelf(uft::Value const&, uft::Set const&); void getSourceDOMNULL(uft::Value const&, uft::Set const&); void isNodeInNodesetTrue(uft::Value const&, xpath::Context*, mdom::Node*); void numericalValue(uft::Value const&); uft::String stringValue(mdom::Node const&, xpath::Context*); } #endif // _XPATH_H