Exemplo n.º 1
0
	void execute(void* result, Tree& tree)
	{
		my_type first, second;
		my_type& func = *(my_type*)result;

		getNextArgument(&first, tree);
		getNextArgument(&second, tree);
		
		func.b = first.b && second.b;
		func.v = first.v + second.v;
	}
Exemplo n.º 2
0
std::string
CommandLineParser::getNextOptionalParameter()
{
  if ( argumentStartsWith( "-" )  ||  argumentStartsWith( ":" ) )
    return "";
  return getNextArgument();
}
Exemplo n.º 3
0
std::string 
CommandLineParser::getNextParameter()
{
  if ( !hasNextArgument() )
    fail( "missing parameter" );
  return getNextArgument();
}
Exemplo n.º 4
0
void Sin::execute(void* result, Tree &tree)
{
	double& arg = *(double*)result;
    getNextArgument(&arg, tree);
	// argument in radians
    arg = sin(arg);
}
Exemplo n.º 5
0
void 
CommandLineParser::getNextOption()
{
  if ( argumentStartsWith( "-" )  ||  argumentStartsWith( "--" ) )
    m_option = getNextArgument();
  else
    m_option = "";
}
Exemplo n.º 6
0
void If::execute(void* result, Tree &tree)
{
	std::vector<bool>& res = *(std::vector<bool>*)result;
		uint size = (uint) res.size();

		std::vector<bool> arg(size), res1(size), res2(size);
		getNextArgument(&arg, tree);
		getNextArgument(&res1, tree);
		getNextArgument(&res2, tree);

		for(uint i = 0; i < size; i++)
			if(arg[i]) {
				res[i] = res1[i];
			} else {
				res[i] = res2[i];
			}
}
Exemplo n.º 7
0
void 
CommandLineParser::readNonOptionCommands()
{
  if ( argumentStartsWith( ":" ) )
    m_testPath = getNextArgument().substr( 1 );
  else
  {
    CommandLinePlugInInfo plugIn;
    int indexParameter = getCurrentArgument().find( '=' );
    if ( indexParameter < 0 )
      plugIn.m_fileName = getCurrentArgument();
    else
    {
      plugIn.m_fileName = getCurrentArgument().substr( 0, indexParameter );
      std::string parameters = getCurrentArgument().substr( indexParameter +1 );
      plugIn.m_parameters = CPPUNIT_NS::PlugInParameters( parameters );
    }
    
    m_plugIns.push_back( plugIn );

    getNextArgument();
  }
}