Beispiel #1
0
//----------------------------------------------------------------------
//    Global functions
//----------------------------------------------------------------------
char myGetChar(istream& istr)
{
   char ch;
   set_keypress();
   istr.unsetf(ios_base::skipws);
   istr >> ch;
   istr.setf(ios_base::skipws);
   reset_keypress();
   return ch;
}
//----------------------------------------------------------------------
//    Global funcitons
//----------------------------------------------------------------------
char mygetc(istream& istr)
{
   char ch;
   set_keypress();
   istr.unsetf(ios_base::skipws);
   istr >> ch;
   istr.setf(ios_base::skipws);
   reset_keypress();
   #ifdef TEST_ASC
   cout << left << setw(6) << int(ch);
   #endif // TEST_ASC
   return ch;
}
void unserialise(istream &in, KeySet & input)
{
	namespace qi = boost::spirit::qi;

	using boost::spirit::ascii::space;

	in.unsetf (std::ios::skipws);
	boost::spirit::istream_iterator begin (in);
	boost::spirit::istream_iterator end;

	Action<boost::spirit::istream_iterator> p (input);

	if (!boost::spirit::qi::phrase_parse(begin, end, p, space))
	{
		throw std::runtime_error("boost::spirit::qi::phrase_parse returned unsuccessfully");
	}
}