Beispiel #1
0
bool Reader::beginNamedObject(const char *name)
{
    if ( quotedLiteral(name) )
    {
        space();
        if (match(':') )
        {
            space();
            if ( beginObject() )
                return true;
        }
        throw __LINE__;
    }
    return false;
}
Beispiel #2
0
bool Reader::namedValue(const char *name, double &fValue)
{
    if ( quotedLiteral(name) )
    {
        space();
        if (match(':') )
        {
            space();
            if ( decimal(fValue) )
            {
                return true;
            }
        }
        throw __LINE__;
    }
    return false;
}
Beispiel #3
0
bool Reader::namedValue(const char *name, long &iValue)
{
    if ( quotedLiteral(name) )
    {
        space();
        if (match(':') )
        {
            space();
            if ( integer(iValue) )
            {
                return true;
            }
        }
        throw __LINE__;
    }
    return false;
}
Beispiel #4
0
bool Reader::namedValue(const char *name, bool &bValue)
{
    if ( quotedLiteral(name) )
    {
        space();
        if (match(':') )
        {
            space();
            if ( boolean(bValue) )
            {
                return true;
            }
        }
        throw __LINE__;
    }
    return false;
}
Beispiel #5
0
bool Reader::namedValue(const char *name, std::string &value)
{
    if ( quotedLiteral(name) )
    {
        space();
        if (match(':') )
        {
            space();
            if ( string(value) )
            {
                return true;
            }
        }
        throw __LINE__;
    }
    return false;
}
Beispiel #6
0
bool Reader::beginNamedObject(const char *name)
{
	const char *keep = cursor;
	size_t leaves = remains;

	if ( quotedLiteral(name) )
	{
		space();
		if (match(':') )
		{
			space();
			if ( beginObject() )
				return true;
		}
	}
	cursor = keep;
	remains = leaves;
	return false;
}
Beispiel #7
0
bool Reader::namedValue(const char *name, double &fValue)
{
	const char *keep = cursor;
	size_t leaves = remains;

	if ( quotedLiteral(name) )
	{
		space();
		if (match(':') )
		{
			space();
			if ( decimal(fValue) )
			{
				return true;
			}
		}
	}
	cursor = keep;
	remains = leaves;
	return false;
}
Beispiel #8
0
bool Reader::namedValue(const char *name, long &iValue)
{
	const char *keep = cursor;
	size_t leaves = remains;

	if ( quotedLiteral(name) )
	{
		space();
		if (match(':') )
		{
			space();
			if ( integer(iValue) )
			{
				return true;
			}
		}
	}
	cursor = keep;
	remains = leaves;
	return false;
}