Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1. /*
  2.     Parser class for memory stream derived from CParser class.
  3.     Copyright (C) 2003 Jarek Pelczar  (jarekp3@wp.pl)
  4.  
  5.     This program is free software; you can redistribute it and/or modify
  6.     it under the terms of the GNU General Public License as published by
  7.     the Free Software Foundation; either version 2 of the License, or
  8.     (at your option) any later version.
  9.  
  10.     This program is distributed in the hope that it will be useful,
  11.     but WITHOUT ANY WARRANTY; without even the implied warranty of
  12.     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13.     GNU General Public License for more details.
  14.  
  15.     You should have received a copy of the GNU General Public License
  16.     along with this program; if not, write to the Free Software
  17.     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  18. */
  19.  
  20. #include<stdio.h>
  21. #include"parser.h"
  22. #include<ctype.h>
  23.  
  24. CTextStreamParser::CTextStreamParser(char * Stm,int stm_size):CParser()
  25. {
  26.  __Stm=Stm;
  27.  __Size=stm_size;
  28.  __Pos=0;
  29. }
  30.  
  31. CTextStreamParser::~CTextStreamParser()
  32. {
  33.  this->CParser::~CParser();
  34. }
  35.  
  36. char CTextStreamParser::GetChar()
  37. {
  38.  unsigned char c;
  39.  if(IsEOF) return 0;
  40.  if(__Pos>=__Size)
  41.  {
  42.   IsEOF=true;
  43.   return 0;
  44.  }
  45.  c=*(unsigned char *)(__Stm+__Pos);
  46.  __Pos++;
  47.  Look=c;
  48.  return c;
  49. }
  50.