当前位置: 首页>>代码示例>>C++>>正文


C++ StringObject类代码示例

本文整理汇总了C++中StringObject的典型用法代码示例。如果您正苦于以下问题:C++ StringObject类的具体用法?C++ StringObject怎么用?C++ StringObject使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了StringObject类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: print

	void print(int level, FILE *file)
	{
		int count = 0;

		fprintf (file, "{");

		for (map<StringObject *, BaseObject *>::iterator iter = m_map.begin(); iter != m_map.end(); iter ++)
		{
			if (count > 0)
			{
				fprintf (file, ", ");
			}

			StringObject *key = iter->first;
			BaseObject *obj = iter->second;

			key->print(level, file);
			fprintf (file, ": ");
			obj->print(level + 1, file);
			count ++;
		}

		fprintf (file, "}");

	}
开发者ID:GerHobbelt,项目名称:ultrajson,代码行数:25,代码来源:main.cpp

示例2: deletePropertyByIndex

bool StringObject::deletePropertyByIndex(JSCell* cell, ExecState* exec, unsigned i)
{
    StringObject* thisObject = jsCast<StringObject*>(cell);
    if (thisObject->internalValue()->canGetIndex(i))
        return false;
    return JSObject::deletePropertyByIndex(thisObject, exec, i);
}
开发者ID:ollie314,项目名称:webkit,代码行数:7,代码来源:StringObject.cpp

示例3: getOwnPropertySlot

bool StringObject::getOwnPropertySlot(JSObject* cell, ExecState* exec, PropertyName propertyName, PropertySlot& slot)
{
    StringObject* thisObject = jsCast<StringObject*>(cell);
    if (thisObject->internalValue()->getStringPropertySlot(exec, propertyName, slot))
        return true;
    return JSObject::getOwnPropertySlot(thisObject, exec, propertyName, slot);
}
开发者ID:ollie314,项目名称:webkit,代码行数:7,代码来源:StringObject.cpp

示例4: getOwnPropertySlotByIndex

bool StringObject::getOwnPropertySlotByIndex(JSObject* object, ExecState* exec, unsigned propertyName, PropertySlot& slot)
{
    StringObject* thisObject = jsCast<StringObject*>(object);
    if (thisObject->internalValue()->getStringPropertySlot(exec, propertyName, slot))
        return true;    
    return JSObject::getOwnPropertySlot(thisObject, exec, Identifier::from(exec, propertyName), slot);
}
开发者ID:ollie314,项目名称:webkit,代码行数:7,代码来源:StringObject.cpp

示例5: getOwnPropertySlot

bool StringObject::getOwnPropertySlot(JSCell* cell, ExecState* exec, unsigned propertyName, PropertySlot& slot)
{
    StringObject* thisObject = static_cast<StringObject*>(cell);
    if (thisObject->internalValue()->getStringPropertySlot(exec, propertyName, slot))
        return true;    
    return JSObject::getOwnPropertySlot(thisObject, exec, Identifier::from(exec, propertyName), slot);
}
开发者ID:1833183060,项目名称:wke,代码行数:7,代码来源:StringObject.cpp

示例6: getOwnPropertyDescriptor

bool StringObject::getOwnPropertyDescriptor(JSObject* object, ExecState* exec, PropertyName propertyName, PropertyDescriptor& descriptor)
{
    StringObject* thisObject = jsCast<StringObject*>(object);
    if (thisObject->internalValue()->getStringPropertyDescriptor(exec, propertyName, descriptor))
        return true;    
    return JSObject::getOwnPropertyDescriptor(thisObject, exec, propertyName, descriptor);
}
开发者ID:dog-god,项目名称:iptv,代码行数:7,代码来源:StringObject.cpp

示例7: getObjectTaint

/* Returns the taint on an object.
 * - Currently only arrays and java.lang.String is supported
 */
u4 getObjectTaint(Object* obj, const char* descriptor)
{
    ArrayObject *arrObj = NULL;
    if (obj == NULL) {
	return TAINT_CLEAR;
    }

    if (descriptor[0] == '[') {
	/* Get the taint from the array */
	arrObj = (ArrayObject*) obj;
	if (arrObj != NULL) {
	    return arrObj->taint.tag;
	}
    } 
    
    if (strcmp(descriptor, "Ljava/lang/String;") == 0) {
    StringObject * strObj = (StringObject*) obj;
	arrObj = strObj->array();
	if (arrObj != NULL) {
	    return arrObj->taint.tag;
	} /* else, empty string? don't worry about it */
    } 

    /* TODO: What about classes derived from String? */

    /* Don't worry about other object types */
    return TAINT_CLEAR;
}
开发者ID:flowcoaster,项目名称:android_platform_dalvik,代码行数:31,代码来源:TaintProp.cpp

示例8: getOwnPropertyNames

void StringObject::getOwnPropertyNames(JSObject* object, ExecState* exec, PropertyNameArray& propertyNames, EnumerationMode mode)
{
    StringObject* thisObject = jsCast<StringObject*>(object);
    int size = thisObject->internalValue()->length();
    for (int i = 0; i < size; ++i)
        propertyNames.add(Identifier(exec, String::number(i)));
    if (mode == IncludeDontEnumProperties)
        propertyNames.add(exec->propertyNames().length);
    return JSObject::getOwnPropertyNames(thisObject, exec, propertyNames, mode);
}
开发者ID:dog-god,项目名称:iptv,代码行数:10,代码来源:StringObject.cpp

示例9: deleteProperty

bool StringObject::deleteProperty(JSCell* cell, ExecState* exec, PropertyName propertyName)
{
    StringObject* thisObject = jsCast<StringObject*>(cell);
    if (propertyName == exec->propertyNames().length)
        return false;
    Optional<uint32_t> index = parseIndex(propertyName);
    if (index && thisObject->internalValue()->canGetIndex(index.value()))
        return false;
    return JSObject::deleteProperty(thisObject, exec, propertyName);
}
开发者ID:ollie314,项目名称:webkit,代码行数:10,代码来源:StringObject.cpp

示例10: DECLARE_THROW_SCOPE

bool StringObject::putByIndex(JSCell* cell, ExecState* exec, unsigned propertyName, JSValue value, bool shouldThrow)
{
    VM& vm = exec->vm();
    auto scope = DECLARE_THROW_SCOPE(vm);

    StringObject* thisObject = jsCast<StringObject*>(cell);
    if (thisObject->internalValue()->canGetIndex(propertyName))
        return typeError(exec, scope, shouldThrow, ASCIILiteral(ReadonlyPropertyWriteError));
    return JSObject::putByIndex(cell, exec, propertyName, value, shouldThrow);
}
开发者ID:ollie314,项目名称:webkit,代码行数:10,代码来源:StringObject.cpp

示例11: putByIndex

void StringObject::putByIndex(JSCell* cell, ExecState* exec, unsigned propertyName, JSValue value, bool shouldThrow)
{
    StringObject* thisObject = jsCast<StringObject*>(cell);
    if (thisObject->internalValue()->canGetIndex(propertyName)) {
        if (shouldThrow)
            throwTypeError(exec, StrictModeReadonlyPropertyWriteError);
        return;
    }
    JSObject::putByIndex(cell, exec, propertyName, value, shouldThrow);
}
开发者ID:dog-god,项目名称:iptv,代码行数:10,代码来源:StringObject.cpp

示例12: deleteProperty

bool StringObject::deleteProperty(JSCell* cell, ExecState* exec, const Identifier& propertyName)
{
    StringObject* thisObject = static_cast<StringObject*>(cell);
    if (propertyName == exec->propertyNames().length)
        return false;
    bool isStrictUInt32;
    unsigned i = propertyName.toUInt32(isStrictUInt32);
    if (isStrictUInt32 && thisObject->internalValue()->canGetIndex(i))
        return false;
    return JSObject::deleteProperty(thisObject, exec, propertyName);
}
开发者ID:1833183060,项目名称:wke,代码行数:11,代码来源:StringObject.cpp

示例13: sysMD5

//  Arity: 2 -> 0
Ref * sysMD5( Ref * pc, class MachineClass * vm ) {
    if ( vm->count != 1 ) throw Ginger::Mishap( "ArgsMismatch" );
    StringObject input = Cell( vm->fastPop() ).asStringObject();
    
    MD5Digester digester;
    digester.update( input.getCharPtr(), input.length() );

    vm->fastPush( vm->heap().copyString( pc, digester.digest().c_str() ) );
    
    return pc;
}
开发者ID:,项目名称:,代码行数:12,代码来源:

示例14: deleteProperty

bool StringObject::deleteProperty(JSCell* cell, ExecState* exec, PropertyName propertyName)
{
    StringObject* thisObject = jsCast<StringObject*>(cell);
    if (propertyName == exec->propertyNames().length)
        return false;
    unsigned i = propertyName.asIndex();
    if (thisObject->internalValue()->canGetIndex(i)) {
        ASSERT(i != PropertyName::NotAnIndex); // No need for an explicit check, the above test would always fail!
        return false;
    }
    return JSObject::deleteProperty(thisObject, exec, propertyName);
}
开发者ID:dog-god,项目名称:iptv,代码行数:12,代码来源:StringObject.cpp

示例15: less

bool StringObject::less(IObject *obj)
{
    StringObject *temp = dynamic_cast<StringObject*>(obj);
    if(this->equal(obj)) return false;
    int min = strlen(value);
    if((int)strlen(temp->getStr()) < min) min = strlen(temp->getStr());
    char *checkThis = this->getStr();
    char *checkObj = temp->getStr();
    int count = 0;
    for(count = 0; count < min; ++count)
    {
        if(checkThis[count] > checkObj[count]) return false;
        else if(checkThis[count] < checkObj[count]) return true;
    }
    if(count == (int)strlen(value)) return true;
    else return false;
}
开发者ID:Lookyan,项目名称:algos,代码行数:17,代码来源:main.cpp


注:本文中的StringObject类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。