コード例 #1
0
VError VJSONValue::GetString( VString& outString) const
{
    VError err = VE_OK;
    switch( fType)
    {
    case JSON_undefined:
    {
        outString.Clear();	// not 'undefined'. toString() returns an empty string on an undefined value in a javascript array
        break;
    }

    case JSON_null:
    {
        outString.Clear();	// not 'null'. toString() returns an empty string on a null value in a javascript array
        break;
    }

    case JSON_true:
    {
        outString = sTrueString;
        break;
    }

    case JSON_false:
    {
        outString = sFalseString;
        break;
    }

    case JSON_string:
    {
        outString.FromString( fString);
        break;
    }

    case JSON_number:
    {
        VReal r( fNumber);
        err = r.GetJSONString( outString, JSON_Default);
        break;
    }

    case JSON_array:
    {
        err = fArray->GetString( outString);
        break;
    }

    case JSON_object:
    {
        err = fObject->GetString( outString);
        break;
    }

    default:
        xbox_assert( false);
    }

    return err;
}
コード例 #2
0
void VJSONValue::GetTime(VTime& outTime) const
{
	VError err = VE_OK;
	switch (fType)
	{

		case JSON_string:
		{
			VString s;
			s.FromString(fString);
			outTime.FromString(s);
			break;
		}

		case JSON_date:
		{
			outTime.FromMilliseconds(fTimeStamp);
			break;
		}

		case JSON_number:
		{
			outTime.FromMilliseconds(fNumber);
			break;
		}

		default:
		{
			outTime.Clear();
			outTime.SetNull(true);
			break;
		}
	}
}
コード例 #3
0
void VJSONSingleObjectWriter::GetObject( VString& outObject)
{
	if (!fIsClosed)
	{
		fObject.AppendUniChar( '}');
		fIsClosed = true;
	}
	outObject.FromString( fObject);
}
コード例 #4
0
void AXMLElement::GetAttribute(const VString &pAttributename,VString &pValue) {
	AXMLAttribute	*attribute = NULL;
	attribute = fFirstAttribute;
	while (attribute)
	{
		if (attribute->GetName() == pAttributename) break;
		attribute = attribute->GetNext();
	}
	if (attribute) pValue.FromString(attribute->GetValue());
	else pValue.Clear();
}
コード例 #5
0
void AXMLCData::GetData( VString &pData)
{
	pData.FromString(fCData);
}
コード例 #6
0
void AXMLText::GetData( VString &pData)
{
	pData.FromString(fText);
}