00001 #ifndef _xpathopattrib_h 00002 #define _xpathopattrib_h 00003 00004 #include <spl/Debug.h> 00005 #include <spl/RefCountPtrCast.h> 00006 #include <spl/xml/xpath/private/XPathOperator.h> 00007 00008 class XPathOpAttrib; 00009 typedef RefCountPtrCast<XPathOpAttrib, XPathOperator, XPathOperatorPtr> XPathOpAttribPtr; 00010 00013 class XPathOpAttrib : public XPathOperator 00014 { 00015 public: 00016 XPathOpAttrib(); 00017 XPathOpAttrib(const XPathOpAttrib& op); 00018 virtual ~XPathOpAttrib(); 00019 00020 XPathOpAttrib& operator =(const XPathOpAttrib& oproot); 00021 00022 virtual bool IsMatch(XmlNode& context); 00023 virtual XmlNodeListPtr NextContext(XmlNodePtr context); 00024 00025 #if defined(DEBUG) || defined(_DEBUG) 00026 void CheckMem() const; 00027 void ValidateMem() const; 00028 #endif 00029 }; 00030 00031 00032 #endif