コード例 #1
0
static int ParseOneOf( ParseContext* ctx, ConfigToken* tokens, int sz )
{
	ConfigToken parsed_token = Token_Unknown;
	int i = 0;

	parsed_token = ParseToken( ctx );

	for( i = 0; i < sz; i++ )
	{
		if( parsed_token == tokens[i] ) return tokens[i];
	}

	if( parsed_token != Token_Unknown ) 
	{
		sprintf( error_buffer, "%s: unexpected configuration token: found: '%s', expected one of: %s",
				ERROR_PREFIX, TokenToString( parsed_token ), TokensToString( tokens, sz ) );
	}
	else
	{
		sprintf( error_buffer, "%s: unknown configuration token: '%s', expected one of: %s",
			ERROR_PREFIX, ctx->token, TokensToString( tokens, sz ) );
	}

	return CONFIG_PARSE_ERROR;
}
コード例 #2
0
void Directory::Make(std::string directory) {
    std::list<std::string> dirs = Tokenize(directory);
    if (dirs.size() > 1) {
        dirs.pop_back();
        Make(TokensToString(dirs));
    }

    if (Directory::Exists(directory)) {
        return;
        //throw Core::Exception("directory allready exists: " + directory);
    }
    if (mkdir(directory.c_str(),0777) != 0) {
        throw Core::Exception("could not create directory: " + directory);
    }
}