示例#1
0
JSValue JSFileReader::result(ExecState* exec) const
{
    FileReader* imp = impl();
    if (imp->readType() == FileReaderLoader::ReadAsArrayBuffer)
        return toJS(exec, globalObject(), WTF::getPtr(imp->arrayBufferResult()));
    return jsOwnedStringOrNull(exec, imp->stringResult());
}
v8::Handle<v8::Value> V8FileReader::resultAccessorGetter(v8::Local<v8::String> name, const v8::AccessorInfo& info)
{
    INC_STATS("DOM.FileReader.result._get");
    v8::Handle<v8::Object> holder = info.Holder();
    FileReader* imp = V8FileReader::toNative(holder);
    if (imp->readType() == FileReaderLoader::ReadAsArrayBuffer)
        return toV8(imp->arrayBufferResult());
    return v8StringOrNull(imp->stringResult());
}
示例#3
0
void V8FileReader::resultAttributeGetterCustom(const v8::PropertyCallbackInfo<v8::Value>& info)
{
    v8::Handle<v8::Object> holder = info.Holder();
    FileReader* impl = V8FileReader::toImpl(holder);
    if (impl->readType() == FileReaderLoader::ReadAsArrayBuffer) {
        v8SetReturnValueFast(info, DOMArrayBuffer::create(impl->arrayBufferResult()), impl);
        return;
    }
    v8SetReturnValueStringOrNull(info, impl->stringResult(), info.GetIsolate());
}