sgmlparser.h

来自「html-->wml的转换,能实现html到wml的大量转换工作,但是存在」· C头文件 代码 · 共 87 行

H
87
字号
// Copyright (c) 1994 James Clark// See the file COPYING for copying permission.#ifndef SgmlParser_INCLUDED#define SgmlParser_INCLUDED 1#ifdef __GNUG__#pragma interface#endif#include "StringC.h"#include "Ptr.h"#include "Location.h"#include "EntityManager.h"#include <signal.h>#ifdef SP_NAMESPACEnamespace SP_NAMESPACE {#endifclass Event;class Parser;class UnivCharsetDesc;class EventHandler;struct ParserOptions;template<class T> class Ptr;template<class T> class ConstPtr;class InputSourceOrigin;class Sd;class Syntax;class Dtd;class SP_API SgmlParser {public:  struct SP_API Params {    enum EntityType {      document,      subdoc,      dtd    };    Params();    EntityType entityType;	// defaults to document    StringC sysid;		// must be specified    Ptr<InputSourceOrigin> origin;    Ptr<EntityManager> entityManager;    const SgmlParser *parent;    ConstPtr<Sd> sd;    ConstPtr<Syntax> prologSyntax;    ConstPtr<Syntax> instanceSyntax;    unsigned subdocLevel;    const ParserOptions *options;    PackedBoolean subdocInheritActiveLinkTypes;    // referenced subdocs count against SUBDOC limit in SGML declaration    PackedBoolean subdocReferenced;    StringC doctypeName;  };  SgmlParser();			// must call init  SgmlParser(const Params &params);  void init(const Params &params);  ~SgmlParser();  Event *nextEvent();  void parseAll(EventHandler &, const volatile sig_atomic_t *cancelPtr = 0);  ConstPtr<Sd> sd() const;  ConstPtr<Syntax> instanceSyntax() const;  ConstPtr<Syntax> prologSyntax() const;  EntityManager &entityManager() const;  const EntityCatalog &entityCatalog() const;  const ParserOptions &options() const;  // Only to be called after the parse has ended.  Ptr<Dtd> baseDtd();  void activateLinkType(const StringC &);  void allLinkTypesActivated();  void swap(SgmlParser &);  friend class Parser;private:  SgmlParser(const SgmlParser &);  void operator=(const SgmlParser &);  Parser *parser_;};#ifdef SP_NAMESPACE}#endif#endif /* not SgmlParser_INCLUDED */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?