示例#1
0
void JsonValue::getEXTfldvalForValue(tThreadData* pThreadData, EXTfldval &retVal, Json::Value* posPointer) {
    // Create return value object
    JsonValue *newObj = createNVObj<JsonValue>(pThreadData);
    if ( posPointer != 0 ) {
        // Return pointer to found position
        newObj->setJsonValue(document, posPointer); // Set value and pointer to source
    } else {
        // Create and return new null object
        shared_ptr<Json::Value> nullObj(new Json::Value());
        newObj->setJsonValue(nullObj);
    }

    retVal.setObjInst( newObj->getInstance(), qtrue );
}
示例#2
0
// Get a pointer to the root of the current object
void JsonValue::methodRoot( tThreadData* pThreadData, qshort pParamCount ) {
    JsonValue *newObj = createNVObj<JsonValue>(pThreadData);
    newObj->setJsonValue(document);

    EXTfldval retVal;
    retVal.setObjInst( newObj->getInstance(), qtrue );
    ECOaddParam( pThreadData->mEci, &retVal );
}
示例#3
0
// Create a copy of the pointer at the current position.  This copied pointer is trimmed above the current position.
void JsonValue::methodCopy( tThreadData* pThreadData, qshort pParamCount ) {
    shared_ptr<Json::Value> copyValue(new Json::Value(*jsonValue));

    JsonValue *newObj = createNVObj<JsonValue>(pThreadData);
    newObj->setJsonValue(copyValue);

    EXTfldval retVal;
    retVal.setObjInst( newObj->getInstance(), qtrue );
    ECOaddParam( pThreadData->mEci, &retVal );
}