| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 Google Inc. All rights reserved. |
| 3 * Copyright (C) 2012 Ericsson AB. All rights reserved. | 3 * Copyright (C) 2012 Ericsson AB. All rights reserved. |
| 4 * | 4 * |
| 5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
| 6 * modification, are permitted provided that the following conditions are | 6 * modification, are permitted provided that the following conditions are |
| 7 * met: | 7 * met: |
| 8 * | 8 * |
| 9 * * Redistributions of source code must retain the above copyright | 9 * * Redistributions of source code must retain the above copyright |
| 10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
| (...skipping 414 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 425 { | 425 { |
| 426 return toInt32(value, NormalConversion, exceptionState); | 426 return toInt32(value, NormalConversion, exceptionState); |
| 427 } | 427 } |
| 428 | 428 |
| 429 // Convert a value to a 32-bit integer assuming the conversion cannot fail. | 429 // Convert a value to a 32-bit integer assuming the conversion cannot fail. |
| 430 int32_t toInt32(v8::Handle<v8::Value>); | 430 int32_t toInt32(v8::Handle<v8::Value>); |
| 431 | 431 |
| 432 // Convert a value to a 32-bit unsigned integer. The conversion fails if the | 432 // Convert a value to a 32-bit unsigned integer. The conversion fails if the |
| 433 // value cannot be converted to a number or the range violated per WebIDL: | 433 // value cannot be converted to a number or the range violated per WebIDL: |
| 434 // http://www.w3.org/TR/WebIDL/#es-unsigned-long | 434 // http://www.w3.org/TR/WebIDL/#es-unsigned-long |
| 435 uint32_t toUInt32(v8::Handle<v8::Value>, IntegerConversionConfiguration, Excepti
onState&); | 435 uint32_t toUInt32Slow(v8::Handle<v8::Value>, IntegerConversionConfiguration, Exc
eptionState&); |
| 436 inline uint32_t toUInt32(v8::Handle<v8::Value> value, IntegerConversionConfigura
tion configuration, ExceptionState& exceptionState) |
| 437 { |
| 438 // Fast case. The value is already a 32-bit unsigned integer. |
| 439 if (value->IsUint32()) |
| 440 return value->Uint32Value(); |
| 441 |
| 442 // Fast case. The value is a 32-bit signed integer with NormalConversion con
figuration. |
| 443 if (value->IsInt32() && configuration == NormalConversion) |
| 444 return value->Int32Value(); |
| 445 |
| 446 return toUInt32Slow(value, configuration, exceptionState); |
| 447 } |
| 448 |
| 436 inline uint32_t toUInt32(v8::Handle<v8::Value> value, ExceptionState& exceptionS
tate) | 449 inline uint32_t toUInt32(v8::Handle<v8::Value> value, ExceptionState& exceptionS
tate) |
| 437 { | 450 { |
| 438 return toUInt32(value, NormalConversion, exceptionState); | 451 return toUInt32(value, NormalConversion, exceptionState); |
| 439 } | 452 } |
| 440 | 453 |
| 441 // Convert a value to a 32-bit unsigned integer assuming the conversion cannot f
ail. | 454 // Convert a value to a 32-bit unsigned integer assuming the conversion cannot f
ail. |
| 442 uint32_t toUInt32(v8::Handle<v8::Value>); | 455 uint32_t toUInt32(v8::Handle<v8::Value>); |
| 443 | 456 |
| 444 // Convert a value to a 64-bit signed integer. The conversion fails if the | 457 // Convert a value to a 64-bit signed integer. The conversion fails if the |
| 445 // value cannot be converted to a number or the range violated per WebIDL: | 458 // value cannot be converted to a number or the range violated per WebIDL: |
| (...skipping 565 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1011 | 1024 |
| 1012 private: | 1025 private: |
| 1013 v8::TryCatch& m_block; | 1026 v8::TryCatch& m_block; |
| 1014 }; | 1027 }; |
| 1015 | 1028 |
| 1016 typedef void (*InstallTemplateFunction)(v8::Local<v8::FunctionTemplate>, v8::Iso
late*); | 1029 typedef void (*InstallTemplateFunction)(v8::Local<v8::FunctionTemplate>, v8::Iso
late*); |
| 1017 | 1030 |
| 1018 } // namespace blink | 1031 } // namespace blink |
| 1019 | 1032 |
| 1020 #endif // V8Binding_h | 1033 #endif // V8Binding_h |
| OLD | NEW |