Home | History | Annotate | Download | only in extensions

Lines Matching defs:string

28 #include "externalize-string-extension.h"
53 typedef SimpleStringResource<char, v8::String::ExternalAsciiStringResource>
55 typedef SimpleStringResource<uc16, v8::String::ExternalStringResource>
65 v8::Handle<v8::String> str) {
66 if (strcmp(*v8::String::AsciiValue(str), "externalizeString") == 0) {
69 ASSERT(strcmp(*v8::String::AsciiValue(str), "isAsciiString") == 0);
78 return v8::ThrowException(v8::String::New(
79 "First parameter to externalizeString() must be a string."));
86 return v8::ThrowException(v8::String::New(
91 Handle<String> string = Utils::OpenHandle(*args[0].As<v8::String>());
92 if (string->IsExternalString()) {
93 return v8::ThrowException(v8::String::New(
96 if (string->IsAsciiRepresentation() && !force_two_byte) {
97 char* data = new char[string->length()];
98 String::WriteToFlat(*string, data, 0, string->length());
100 data, string->length());
101 result = string->MakeExternal(resource);
102 if (result && !string->IsSymbol()) {
103 HEAP->external_string_table()->AddString(*string);
107 uc16* data = new uc16[string->length()];
108 String::WriteToFlat(*string, data, 0, string->length());
110 data, string->length());
111 result = string->MakeExternal(resource);
112 if (result && !string->IsSymbol()) {
113 HEAP->external_string_table()->AddString(*string);
118 return v8::ThrowException(v8::String::New("externalizeString() failed."));
127 return v8::ThrowException(v8::String::New(
128 "isAsciiString() requires a single string argument."));
130 return Utils::OpenHandle(*args[0].As<v8::String>())->IsAsciiRepresentation() ?