| OLD | NEW |
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 51 namespace v8 { | 51 namespace v8 { |
| 52 namespace internal { | 52 namespace internal { |
| 53 | 53 |
| 54 namespace { | 54 namespace { |
| 55 | 55 |
| 56 bool ExtractStringSetting(Isolate* isolate, | 56 bool ExtractStringSetting(Isolate* isolate, |
| 57 Handle<JSObject> options, | 57 Handle<JSObject> options, |
| 58 const char* key, | 58 const char* key, |
| 59 icu::UnicodeString* setting) { | 59 icu::UnicodeString* setting) { |
| 60 Handle<String> str = isolate->factory()->NewStringFromAscii(CStrVector(key)); | 60 Handle<String> str = isolate->factory()->NewStringFromAscii(CStrVector(key)); |
| 61 MaybeObject* maybe_object = options->GetProperty(*str); | 61 Handle<Object> object = Object::GetProperty(options, str); |
| 62 Object* object; | 62 if (object->IsString()) { |
| 63 if (maybe_object->ToObject(&object) && object->IsString()) { | |
| 64 v8::String::Utf8Value utf8_string( | 63 v8::String::Utf8Value utf8_string( |
| 65 v8::Utils::ToLocal(Handle<String>(String::cast(object)))); | 64 v8::Utils::ToLocal(Handle<String>::cast(object))); |
| 66 *setting = icu::UnicodeString::fromUTF8(*utf8_string); | 65 *setting = icu::UnicodeString::fromUTF8(*utf8_string); |
| 67 return true; | 66 return true; |
| 68 } | 67 } |
| 69 return false; | 68 return false; |
| 70 } | 69 } |
| 71 | 70 |
| 72 | 71 |
| 73 bool ExtractIntegerSetting(Isolate* isolate, | 72 bool ExtractIntegerSetting(Isolate* isolate, |
| 74 Handle<JSObject> options, | 73 Handle<JSObject> options, |
| 75 const char* key, | 74 const char* key, |
| 76 int32_t* value) { | 75 int32_t* value) { |
| 77 Handle<String> str = isolate->factory()->NewStringFromAscii(CStrVector(key)); | 76 Handle<String> str = isolate->factory()->NewStringFromAscii(CStrVector(key)); |
| 78 MaybeObject* maybe_object = options->GetProperty(*str); | 77 Handle<Object> object = Object::GetProperty(options, str); |
| 79 Object* object; | 78 if (object->IsNumber()) { |
| 80 if (maybe_object->ToObject(&object) && object->IsNumber()) { | |
| 81 object->ToInt32(value); | 79 object->ToInt32(value); |
| 82 return true; | 80 return true; |
| 83 } | 81 } |
| 84 return false; | 82 return false; |
| 85 } | 83 } |
| 86 | 84 |
| 87 | 85 |
| 88 bool ExtractBooleanSetting(Isolate* isolate, | 86 bool ExtractBooleanSetting(Isolate* isolate, |
| 89 Handle<JSObject> options, | 87 Handle<JSObject> options, |
| 90 const char* key, | 88 const char* key, |
| 91 bool* value) { | 89 bool* value) { |
| 92 Handle<String> str = isolate->factory()->NewStringFromAscii(CStrVector(key)); | 90 Handle<String> str = isolate->factory()->NewStringFromAscii(CStrVector(key)); |
| 93 MaybeObject* maybe_object = options->GetProperty(*str); | 91 Handle<Object> object = Object::GetProperty(options, str); |
| 94 Object* object; | 92 if (object->IsBoolean()) { |
| 95 if (maybe_object->ToObject(&object) && object->IsBoolean()) { | |
| 96 *value = object->BooleanValue(); | 93 *value = object->BooleanValue(); |
| 97 return true; | 94 return true; |
| 98 } | 95 } |
| 99 return false; | 96 return false; |
| 100 } | 97 } |
| 101 | 98 |
| 102 | 99 |
| 103 icu::SimpleDateFormat* CreateICUDateFormat( | 100 icu::SimpleDateFormat* CreateICUDateFormat( |
| 104 Isolate* isolate, | 101 Isolate* isolate, |
| 105 const icu::Locale& icu_locale, | 102 const icu::Locale& icu_locale, |
| (...skipping 948 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1054 | 1051 |
| 1055 | 1052 |
| 1056 void BreakIterator::DeleteBreakIterator( | 1053 void BreakIterator::DeleteBreakIterator( |
| 1057 const v8::WeakCallbackData<v8::Value, void>& data) { | 1054 const v8::WeakCallbackData<v8::Value, void>& data) { |
| 1058 DeleteNativeObjectAt<icu::BreakIterator>(data, 0); | 1055 DeleteNativeObjectAt<icu::BreakIterator>(data, 0); |
| 1059 DeleteNativeObjectAt<icu::UnicodeString>(data, 1); | 1056 DeleteNativeObjectAt<icu::UnicodeString>(data, 1); |
| 1060 DestroyGlobalHandle(data); | 1057 DestroyGlobalHandle(data); |
| 1061 } | 1058 } |
| 1062 | 1059 |
| 1063 } } // namespace v8::internal | 1060 } } // namespace v8::internal |
| OLD | NEW |