本文整理汇总了C++中JLocalEnv::GetIntField方法的典型用法代码示例。如果您正苦于以下问题:C++ JLocalEnv::GetIntField方法的具体用法?C++ JLocalEnv::GetIntField怎么用?C++ JLocalEnv::GetIntField使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类JLocalEnv
的用法示例。
在下文中一共展示了JLocalEnv::GetIntField方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: checkExceptions
extern "C" int
rb_ary_size(VALUE ary)
{
JLocalEnv env;
int length = (int)(env->GetIntField(valueToObject(env, ary), RubyArray_length_field));
checkExceptions(env);
return length;
}
示例2:
int
RubyString::length()
{
// If already synced with java, just return the cached length value
if (rwdata.rstring != NULL) {
return rwdata.rstring->len;
}
JLocalEnv env;
jobject byteList = env->GetObjectField(obj, RubyString_value_field);
return env->GetIntField(byteList, ByteList_length_field);
}
示例3: checkExceptions
extern "C" ID
rb_intern2(const char* name, long len)
{
std::map<StringKey, ID>::iterator it = nonConstSymbolMap.find(StringKey(name, len));
if (it != nonConstSymbolMap.end()) {
return it->second;
}
JLocalEnv env;
jobject result = env->CallObjectMethod(getRuntime(), Ruby_newSymbol_method, env->NewStringUTF(name));
checkExceptions(env);
Symbol* sym = addSymbol(env, env->GetIntField(result, RubySymbol_id_field), result);
nonConstSymbolMap.insert(std::map<StringKey, ID>::value_type(StringKey(sym->cstr, (long) len), sym->id));
return sym->id;
}