X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Finput.cpp;h=cc82227281563a195fa3a88c5d6e78ef4c44ffc1;hb=e0af585ed57bdb5b1ea4f4a415fda13b5d99d2dc;hp=0f23bb29b9797bff09fc738dc52be6e7aeddf8e7;hpb=98f563736e0837a429714b98656215503c607710;p=libs%2Fdatafile.git diff --git a/source/input.cpp b/source/input.cpp index 0f23bb2..cc82227 100644 --- a/source/input.cpp +++ b/source/input.cpp @@ -1,14 +1,9 @@ -/* -This file is part of libmspparser -Copyright © 2006 Mikko Rasa, Mikkosoft Productions -Distributed under the LGPL -*/ #include "input.h" namespace Msp { -namespace Parser { +namespace DataFile { -Input::Input(std::istream &i): +Input::Input(IO::Base &i): in(i), line(1), next(-1) @@ -16,9 +11,9 @@ Input::Input(std::istream &i): int Input::get() { - int c=next; - next=-1; - if(c<0) c=in.get(); + int c = next; + next = -1; + if(c<0) c = in.get(); if(c=='\n') ++line; @@ -29,9 +24,14 @@ int Input::get() int Input::peek() { if(next<0) - next=in.get(); + next = in.get(); return next; } -} // namespace Parser +Input::operator bool() const +{ + return next>=0 || !in.eof(); +} + +} // namespace DataFile } // namespace Msp