Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(188)

Side by Side Diff: Source/bindings/scripts/v8_types.py

Issue 537403002: bindings: Renames from/toInternalPointer, etc. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Synced. Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « Source/bindings/scripts/v8_methods.py ('k') | Source/bindings/templates/attributes.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (C) 2013 Google Inc. All rights reserved. 1 # Copyright (C) 2013 Google Inc. All rights reserved.
2 # 2 #
3 # Redistribution and use in source and binary forms, with or without 3 # Redistribution and use in source and binary forms, with or without
4 # modification, are permitted provided that the following conditions are 4 # modification, are permitted provided that the following conditions are
5 # met: 5 # met:
6 # 6 #
7 # * Redistributions of source code must retain the above copyright 7 # * Redistributions of source code must retain the above copyright
8 # notice, this list of conditions and the following disclaimer. 8 # notice, this list of conditions and the following disclaimer.
9 # * Redistributions in binary form must reproduce the above 9 # * Redistributions in binary form must reproduce the above
10 # copyright notice, this list of conditions and the following disclaimer 10 # copyright notice, this list of conditions and the following disclaimer
(...skipping 481 matching lines...) Expand 10 before | Expand all | Expand 10 after
492 elif idl_type.may_raise_exception_on_conversion: 492 elif idl_type.may_raise_exception_on_conversion:
493 arguments = ', '.join([v8_value, 'exceptionState']) 493 arguments = ', '.join([v8_value, 'exceptionState'])
494 else: 494 else:
495 arguments = v8_value 495 arguments = v8_value
496 496
497 if base_idl_type in V8_VALUE_TO_CPP_VALUE: 497 if base_idl_type in V8_VALUE_TO_CPP_VALUE:
498 cpp_expression_format = V8_VALUE_TO_CPP_VALUE[base_idl_type] 498 cpp_expression_format = V8_VALUE_TO_CPP_VALUE[base_idl_type]
499 elif idl_type.is_typed_array_element_type: 499 elif idl_type.is_typed_array_element_type:
500 cpp_expression_format = ( 500 cpp_expression_format = (
501 '{v8_value}->Is{idl_type}() ? ' 501 '{v8_value}->Is{idl_type}() ? '
502 'V8{idl_type}::toNative(v8::Handle<v8::{idl_type}>::Cast({v8_value}) ) : 0') 502 'V8{idl_type}::toImpl(v8::Handle<v8::{idl_type}>::Cast({v8_value})) : 0')
503 elif idl_type.is_dictionary: 503 elif idl_type.is_dictionary:
504 cpp_expression_format = 'V8{idl_type}::toNative({isolate}, {v8_value})' 504 cpp_expression_format = 'V8{idl_type}::toImpl({isolate}, {v8_value})'
505 else: 505 else:
506 cpp_expression_format = ( 506 cpp_expression_format = (
507 'V8{idl_type}::toNativeWithTypeCheck({isolate}, {v8_value})') 507 'V8{idl_type}::toImplWithTypeCheck({isolate}, {v8_value})')
508 508
509 return cpp_expression_format.format(arguments=arguments, idl_type=base_idl_t ype, v8_value=v8_value, isolate=isolate) 509 return cpp_expression_format.format(arguments=arguments, idl_type=base_idl_t ype, v8_value=v8_value, isolate=isolate)
510 510
511 511
512 def v8_value_to_cpp_value_array_or_sequence(native_array_element_type, v8_value, index, isolate='info.GetIsolate()'): 512 def v8_value_to_cpp_value_array_or_sequence(native_array_element_type, v8_value, index, isolate='info.GetIsolate()'):
513 # Index is None for setters, index (starting at 0) for method arguments, 513 # Index is None for setters, index (starting at 0) for method arguments,
514 # and is used to provide a human-readable exception message 514 # and is used to provide a human-readable exception message
515 if index is None: 515 if index is None:
516 index = 0 # special case, meaning "setter" 516 index = 0 # special case, meaning "setter"
517 else: 517 else:
518 index += 1 # human-readable index 518 index += 1 # human-readable index
519 if (native_array_element_type.is_interface_type and 519 if (native_array_element_type.is_interface_type and
520 native_array_element_type.name != 'Dictionary'): 520 native_array_element_type.name != 'Dictionary'):
521 this_cpp_type = None 521 this_cpp_type = None
522 ref_ptr_type = cpp_ptr_type('RefPtr', 'Member', native_array_element_typ e.gc_type) 522 ref_ptr_type = cpp_ptr_type('RefPtr', 'Member', native_array_element_typ e.gc_type)
523 expression_format = '(to{ref_ptr_type}NativeArray<{native_array_element_ type}, V8{native_array_element_type}>({v8_value}, {index}, {isolate}))' 523 expression_format = '(to{ref_ptr_type}NativeArray<{native_array_element_ type}, V8{native_array_element_type}>({v8_value}, {index}, {isolate}))'
524 add_includes_for_type(native_array_element_type) 524 add_includes_for_type(native_array_element_type)
525 else: 525 else:
526 ref_ptr_type = None 526 ref_ptr_type = None
527 this_cpp_type = native_array_element_type.cpp_type 527 this_cpp_type = native_array_element_type.cpp_type
528 expression_format = 'toNativeArray<{cpp_type}>({v8_value}, {index}, {iso late})' 528 expression_format = 'toImplArray<{cpp_type}>({v8_value}, {index}, {isola te})'
529 expression = expression_format.format(native_array_element_type=native_array _element_type.name, cpp_type=this_cpp_type, index=index, ref_ptr_type=ref_ptr_ty pe, v8_value=v8_value, isolate=isolate) 529 expression = expression_format.format(native_array_element_type=native_array _element_type.name, cpp_type=this_cpp_type, index=index, ref_ptr_type=ref_ptr_ty pe, v8_value=v8_value, isolate=isolate)
530 return expression 530 return expression
531 531
532 532
533 def v8_value_to_local_cpp_value(idl_type, extended_attributes, v8_value, variabl e_name, index=None, declare_variable=True, isolate='info.GetIsolate()', used_in_ private_script=False, return_promise=False): 533 def v8_value_to_local_cpp_value(idl_type, extended_attributes, v8_value, variabl e_name, index=None, declare_variable=True, isolate='info.GetIsolate()', used_in_ private_script=False, return_promise=False):
534 """Returns an expression that converts a V8 value to a C++ value and stores it as a local value.""" 534 """Returns an expression that converts a V8 value to a C++ value and stores it as a local value."""
535 535
536 # FIXME: Support union type. 536 # FIXME: Support union type.
537 if idl_type.is_union_type: 537 if idl_type.is_union_type:
538 return '' 538 return ''
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after
812 812
813 813
814 def is_explicit_nullable(idl_type): 814 def is_explicit_nullable(idl_type):
815 # Nullable type that isn't implicit nullable (see above.) For such types, 815 # Nullable type that isn't implicit nullable (see above.) For such types,
816 # we use Nullable<T> or similar explicit ways to represent a null value. 816 # we use Nullable<T> or similar explicit ways to represent a null value.
817 return idl_type.is_nullable and not idl_type.is_implicit_nullable 817 return idl_type.is_nullable and not idl_type.is_implicit_nullable
818 818
819 IdlTypeBase.is_implicit_nullable = property(is_implicit_nullable) 819 IdlTypeBase.is_implicit_nullable = property(is_implicit_nullable)
820 IdlUnionType.is_implicit_nullable = False 820 IdlUnionType.is_implicit_nullable = False
821 IdlTypeBase.is_explicit_nullable = property(is_explicit_nullable) 821 IdlTypeBase.is_explicit_nullable = property(is_explicit_nullable)
OLDNEW
« no previous file with comments | « Source/bindings/scripts/v8_methods.py ('k') | Source/bindings/templates/attributes.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698