inputsource.cxx

来自「SP是一个基于GNU C++编译器」· CXX 代码 · 共 84 行

CXX
84
字号
// Copyright (c) 1994 James Clark// See the file COPYING for copying permission.#ifdef __GNUG__#pragma implementation#endif#include "splib.h"#include "InputSource.h"#include "MarkupScan.h"#ifdef SP_NAMESPACEnamespace SP_NAMESPACE {#endifInputSource::InputSource(InputSourceOrigin *origin, const Char *start,			 const Char *end): origin_(origin), start_(start), end_(end), cur_(start), accessError_(0),  startLocation_(origin, 0), multicode_(0), scanSuppress_(0){}void InputSource::reset(const Char *start,			const Char *end){  origin_ = origin_->copy();  start_ = start;  end_ = end;  cur_ = start_;  startLocation_ = Location(origin_.pointer(), 0);  multicode_ = 0;  scanSuppress_ = 0;  markupScanTable_.clear();}InputSource::~InputSource(){}void InputSource::advanceStartMulticode(const Char *to){  while (start_ < to) {    switch (markupScanTable_[*start_]) {    case MarkupScan::normal:      break;    case MarkupScan::in:      scanSuppress_ = 0;      break;    case MarkupScan::out:      if (!scanSuppress()) {	scanSuppress_ = 1;	scanSuppressSingle_ = 0;      }      break;    case MarkupScan::suppress:      // what's the effect of MSSCHAR followed by MSSCHAR      if (!scanSuppress()) {	scanSuppress_ = 1;	scanSuppressSingle_ = 1;	scanSuppressIndex_ = startLocation_.index() + 1;      }      break;    }    start_++;    startLocation_ += 1;  }}void InputSource::willNotRewind(){}void InputSource::setDocCharset(const CharsetInfo &,				const CharsetInfo &){}void InputSource::willNotSetDocCharset(){}#ifdef SP_NAMESPACE}#endif

⌨️ 快捷键说明

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