|
|
| version 1.2, 2001/09/26 15:43:59 | version 1.35, 2020/12/15 17:10:30 |
|---|---|
| Line 1 | Line 1 |
| /** @file | /** @file |
| Parser: @b dnode methods class - MDnode class decl. | Parser: @b dnode methods class - MDnode class decl. |
| Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com) | Copyright (c) 2001-2020 Art. Lebedev Studio (http://www.artlebedev.com) |
| Author: Alexander Petrosyan <paf@design.ru> (http://design.ru/paf) | Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru) |
| $Id$ | |
| */ | */ |
| #ifndef XNODE_H | #ifndef XNODE_H |
| #define XNODE_H | #define XNODE_H |
| #include <util/XMLString.hpp> | #define IDENT_XNODE_H "$Id$" |
| class MXnode : public Methoded { | class MXnode: public Methoded { |
| public: // Value | public: // Value |
| /// MXnode: +$const | /// MXnode: +$const |
| Value *get_element(const String& aname) { | Value* get_element(const String& aname) { |
| // $CLASS, $method | // $method |
| if(Value *result=Methoded::get_element(aname)) | if(Value* result=Methoded::get_element(aname)) |
| return result; | return result; |
| // $const | // $const |
| if(Value *result=(Value *)consts.get(aname)) | if(Value* result=consts.get(aname)) |
| return result; | return result; |
| return 0; | return 0; |
| Line 30 public: // Value | Line 28 public: // Value |
| public: // VStateless_class | public: // VStateless_class |
| Value *create_new_value(Pool& pool) { return new(pool) VXnode(pool); } | Value* create_new_value(Pool&) { |
| throw Exception(PARSER_RUNTIME, | |
| 0, | |
| "no constructors available, use CreateXXX DOM methods to create nodes instead"); | |
| } | |
| public: | public: |
| MXnode(Pool& pool); | MXnode(const char* aname=0); |
| public: // Methoded | public: // Methoded |
| bool used_directly() { return true; } | bool used_directly() { return true; } |
| private: | private: |
| Hash consts; | HashStringValue consts; |
| }; | }; |
| xmlNode& as_node(MethodParams& params, int index, const char* msg); | |
| xmlChar* as_xmlchar(Request& r, MethodParams& params, int index, const char* msg); | |
| xmlChar* as_xmlqname(Request& r, MethodParams& params, int index, const char* msg=0); | |
| xmlChar* as_xmlncname(Request& r, MethodParams& params, int index, const char* msg=0); | |
| xmlChar* as_xmlname(Request& r, MethodParams& params, int index, const char* msg=0); | |
| xmlChar* as_xmlnsuri(Request& r, MethodParams& params, int index); | |
| xmlNs& pa_xmlMapNs(xmlDoc& doc, const xmlChar* href, const xmlChar* prefix); | |
| #endif | #endif |