Changeset 151169 in webkit
- Timestamp:
- Jun 4, 2013 7:17:51 AM (11 years ago)
- Location:
- trunk
- Files:
-
- 31 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ChangeLog
r151145 r151169 1 2013-06-04 Christophe Dumez <ch.dumez@sisa.samsung.com> 2 3 Automatically generate WorkerContext constructor attributes 4 https://bugs.webkit.org/show_bug.cgi?id=117183 5 6 Reviewed by Kentaro Hara. 7 8 Update GENERATE_BINDINGS macro to take an additional _workercontext_constructors_file 9 optional argument. 10 11 * Source/cmake/WebKitMacros.cmake: 12 1 13 2013-06-03 Eduardo Lima Mitev <elima@igalia.com> 2 14 -
trunk/Source/WebCore/CMakeLists.txt
r151083 r151169 2947 2947 set(SUPPLEMENTAL_DEPENDENCY_FILE ${DERIVED_SOURCES_WEBCORE_DIR}/supplemental_dependency.tmp) 2948 2948 set(WINDOW_CONSTRUCTORS_FILE ${DERIVED_SOURCES_WEBCORE_DIR}/DOMWindowConstructors.idl) 2949 set(WORKERCONTEXT_CONSTRUCTORS_FILE ${DERIVED_SOURCES_WEBCORE_DIR}/WorkerContextConstructors.idl) 2949 2950 set(IDL_ATTRIBUTES_FILE ${WEBCORE_DIR}/bindings/scripts/IDLAttributes.txt) 2950 2951 -
trunk/Source/WebCore/ChangeLog
r151164 r151169 1 2013-06-04 Christophe Dumez <ch.dumez@sisa.samsung.com> 2 3 Automatically generate WorkerContext constructor attributes 4 https://bugs.webkit.org/show_bug.cgi?id=117183 5 6 Reviewed by Kentaro Hara. 7 8 Add [GlobalContext=WindowOnly|WorkerOnly|WindowAndWorker] IDL extended attribute 9 to indicate to the bindings generator on which global context the constructor 10 attribute should be generated for interfaces without [NoInterfaceObject]: 11 - WindowOnly: only on the global Window object (default if ommitted) 12 - WorkerOnly: only on the worker context 13 - WindowAndWorker: On both the global Window object and the worker context 14 15 This covers all the current use cases. 16 17 The JSC bindings generator now automatically generates the Constructor attributes 18 on the WorkerContext for non-callback interfaces which do not have the 19 [NoInterfaceObject] extended attribute but have [GlobalContext=WorkerOnly|WindowAndWorker] 20 extended attribute. 21 22 No new tests, already covered by: 23 fast/js/global-constructors-attributes.html 24 fast/js/global-constructors-attributes-worker.html 25 26 * CMakeLists.txt: 27 * DerivedSources.make: Pass new --workerContextConstructorsFile argument to preprocess-idls.pl. 28 * DerivedSources.pri: Ditto. 29 * GNUmakefile.am: Ditto. 30 * PlatformBlackBerry.cmake: Ditto. 31 * UseJSC.cmake: Ditto. 32 * bindings/scripts/IDLAttributes.txt: Add [GlobalContext=WindowOnly|WorkerOnly|WindowAndWorker] 33 IDL extended attribute. 34 * bindings/scripts/preprocess-idls.pl: Add support for [GlobalContext] extended attribute and 35 generate a partial interface for WorkerContext global constructors that are automatically 36 generated. 37 * dom/MessageEvent.idl: Add [GlobalContext=WindowAndWorker]. 38 * fileapi/Blob.idl: Add [GlobalContext=WindowAndWorker]. 39 * fileapi/FileReader.idl: Add [GlobalContext=WindowAndWorker]. 40 * fileapi/FileReaderSync.idl: Add [GlobalContext=WorkerOnly] and remove [NoInterfaceObject] 41 as the interface should only be visible in worker environment as per the spec. 42 * html/DOMURL.idl: Add [GlobalContext=WindowAndWorker]. 43 * html/canvas/ArrayBuffer.idl: Add [GlobalContext=WindowAndWorker]. 44 * html/canvas/DataView.idl: Add [GlobalContext=WindowAndWorker]. 45 * html/canvas/Float32Array.idl: Add [GlobalContext=WindowAndWorker]. 46 * html/canvas/Float64Array.idl: Add [GlobalContext=WindowAndWorker]. 47 * html/canvas/Int16Array.idl: Add [GlobalContext=WindowAndWorker]. 48 * html/canvas/Int32Array.idl: Add [GlobalContext=WindowAndWorker]. 49 * html/canvas/Int8Array.idl: Add [GlobalContext=WindowAndWorker]. 50 * html/canvas/Uint16Array.idl: Add [GlobalContext=WindowAndWorker]. 51 * html/canvas/Uint32Array.idl: Add [GlobalContext=WindowAndWorker]. 52 * html/canvas/Uint8Array.idl: Add [GlobalContext=WindowAndWorker]. 53 * html/canvas/Uint8ClampedArray.idl: Add [GlobalContext=WindowAndWorker]. 54 * workers/WorkerContext.idl: Remove several Constructor attributes which are now automatically 55 generated. 56 * workers/WorkerLocation.idl: Add [GlobalContext=WorkerOnly] and remove [NoInterfaceObject] 57 as the interface should only be visible in worker environment as per the spec. 58 1 59 2013-06-04 Kangil Han <kangil.han@samsung.com> 2 60 -
trunk/Source/WebCore/DerivedSources.make
r151036 r151169 661 661 $(SUPPLEMENTAL_DEPENDENCY_FILE) \ 662 662 $(WINDOW_CONSTRUCTORS_FILE) \ 663 $(WORKERCONTEXT_CONSTRUCTORS_FILE) \ 663 664 $(JS_DOM_HEADERS) \ 664 665 $(WEB_DOM_HEADERS) \ … … 1006 1007 SUPPLEMENTAL_MAKEFILE_DEPS = ./SupplementalDependencies.dep 1007 1008 WINDOW_CONSTRUCTORS_FILE = ./DOMWindowConstructors.idl 1009 WORKERCONTEXT_CONSTRUCTORS_FILE = ./WorkerContextConstructors.idl 1008 1010 IDL_FILES_TMP = ./idl_files.tmp 1009 1011 ADDITIONAL_IDLS = $(WebCore)/inspector/JavaScriptCallFrame.idl … … 1017 1019 $(SUPPLEMENTAL_MAKEFILE_DEPS) : $(PREPROCESS_IDLS_SCRIPTS) $(BINDING_IDLS) $(ADDITIONAL_IDLS) $(PLATFORM_FEATURE_DEFINES) 1018 1020 printf "$(subst $(space),,$(patsubst %,%\n,$(BINDING_IDLS) $(ADDITIONAL_IDLS)))" > $(IDL_FILES_TMP) 1019 $(call preprocess_idls_script, $(PREPROCESS_IDLS_SCRIPTS)) --defines "$(FEATURE_DEFINES) $(ADDITIONAL_IDL_DEFINES) LANGUAGE_JAVASCRIPT" --idlFilesList $(IDL_FILES_TMP) --supplementalDependencyFile $(SUPPLEMENTAL_DEPENDENCY_FILE) --windowConstructorsFile $(WINDOW_CONSTRUCTORS_FILE) -- supplementalMakefileDeps $@1021 $(call preprocess_idls_script, $(PREPROCESS_IDLS_SCRIPTS)) --defines "$(FEATURE_DEFINES) $(ADDITIONAL_IDL_DEFINES) LANGUAGE_JAVASCRIPT" --idlFilesList $(IDL_FILES_TMP) --supplementalDependencyFile $(SUPPLEMENTAL_DEPENDENCY_FILE) --windowConstructorsFile $(WINDOW_CONSTRUCTORS_FILE) --workerContextConstructorsFile $(WORKERCONTEXT_CONSTRUCTORS_FILE) --supplementalMakefileDeps $@ 1020 1022 rm -f $(IDL_FILES_TMP) 1021 1023 1022 JS%.h : %.idl $(JS_BINDINGS_SCRIPTS) $(IDL_ATTRIBUTES_FILE) $(WINDOW_CONSTRUCTORS_FILE) $( PLATFORM_FEATURE_DEFINES)1024 JS%.h : %.idl $(JS_BINDINGS_SCRIPTS) $(IDL_ATTRIBUTES_FILE) $(WINDOW_CONSTRUCTORS_FILE) $(WORKERCONTEXT_CONSTRUCTORS_FILE) $(PLATFORM_FEATURE_DEFINES) 1023 1025 $(call generator_script, $(JS_BINDINGS_SCRIPTS)) $(IDL_COMMON_ARGS) --defines "$(FEATURE_DEFINES) $(ADDITIONAL_IDL_DEFINES) LANGUAGE_JAVASCRIPT" --generator JS --idlAttributesFile $(IDL_ATTRIBUTES_FILE) --supplementalDependencyFile $(SUPPLEMENTAL_DEPENDENCY_FILE) $< 1024 1026 -
trunk/Source/WebCore/DerivedSources.pri
r150924 r151169 732 732 SUPPLEMENTAL_DEPENDENCY_FILE = supplemental_dependency.tmp 733 733 WINDOW_CONSTRUCTORS_FILE = DOMWindowConstructors.idl 734 WORKERCONTEXT_CONSTRUCTORS_FILE = WorkerContextConstructors.idl 734 735 IDL_FILES_TMP = ${QMAKE_FUNC_FILE_OUT_PATH}/idl_files.tmp 735 736 PREPROCESS_IDLS_SCRIPT = $$PWD/bindings/scripts/preprocess-idls.pl … … 750 751 --idlFilesList $$IDL_FILES_TMP \ 751 752 --supplementalDependencyFile ${QMAKE_FUNC_FILE_OUT_PATH}/$$SUPPLEMENTAL_DEPENDENCY_FILE \ 752 --windowConstructorsFile ${QMAKE_FUNC_FILE_OUT_PATH}/$$WINDOW_CONSTRUCTORS_FILE 753 preprocessIdls.output = $$SUPPLEMENTAL_DEPENDENCY_FILE $$WINDOW_CONSTRUCTORS_FILE 753 --windowConstructorsFile ${QMAKE_FUNC_FILE_OUT_PATH}/$$WINDOW_CONSTRUCTORS_FILE \ 754 --workerContextConstructorsFile ${QMAKE_FUNC_FILE_OUT_PATH}/$$WORKERCONTEXT_CONSTRUCTORS_FILE 755 preprocessIdls.output = $$SUPPLEMENTAL_DEPENDENCY_FILE $$WINDOW_CONSTRUCTORS_FILE $$WORKERCONTEXT_CONSTRUCTORS_FILE 754 756 preprocessIdls.add_output_to_sources = false 755 757 preprocessIdls.depends = $$IDL_BINDINGS -
trunk/Source/WebCore/GNUmakefile.am
r150865 r151169 403 403 supplemental_dependency_file = $(top_builddir)/DerivedSources/WebCore/idl_supplemental_dependencies 404 404 window_constructors_file = $(top_builddir)/DerivedSources/WebCore/DOMWindowConstructors.idl 405 workercontext_constructors_file = $(top_builddir)/DerivedSources/WebCore/WorkerContextConstructors.idl 405 406 idl_files_list = $(top_builddir)/DerivedSources/WebCore/idl_files_list 406 407 idl_attributes_file = $(WebCore)/bindings/scripts/IDLAttributes.txt … … 411 412 $(AM_V_at)echo -n > $(idl_files_list) 412 413 $(AM_V_at)($(foreach idl, $(dom_binding_idls), echo $(idl) &&) echo -n) >> $(idl_files_list) 413 $(AM_V_at)$(PERL) -I$(WebCore)/bindings/scripts $(WebCore)/bindings/scripts/preprocess-idls.pl --defines "LANGUAGE_JAVASCRIPT=1 $(feature_defines)" --idlFilesList $(idl_files_list) --windowConstructorsFile $(window_constructors_file) -- supplementalDependencyFile $@414 415 .PHONY: $(window_constructors_file) 414 $(AM_V_at)$(PERL) -I$(WebCore)/bindings/scripts $(WebCore)/bindings/scripts/preprocess-idls.pl --defines "LANGUAGE_JAVASCRIPT=1 $(feature_defines)" --idlFilesList $(idl_files_list) --windowConstructorsFile $(window_constructors_file) --workerContextConstructorsFile $(workercontext_constructors_file) --supplementalDependencyFile $@ 415 416 .PHONY: $(window_constructors_file) $(workercontext_constructors_file) 416 417 417 418 # This does not appear to work correctly with gnumake unless … … 433 434 # which means that GNUmake will only try to build the dependencies first, but 434 435 # not rebuild all the targets if the dependencies change. 435 $(webkitgtk_sources) $(webkit2_sources) $(webkit2_plugin_process_sources) $(webcore_sources) $(webcoregtk_sources) $(platformgtk_sources) : | $(supplemental_dependency_file) $(window_constructors_file) $(w ebcore_built_sources)436 $(webkitgtk_sources) $(webkit2_sources) $(webkit2_plugin_process_sources) $(webcore_sources) $(webcoregtk_sources) $(platformgtk_sources) : | $(supplemental_dependency_file) $(window_constructors_file) $(workercontext_constructors_file) $(webcore_built_sources) 436 437 437 438 noinst_LTLIBRARIES += \ -
trunk/Source/WebCore/PlatformBlackBerry.cmake
r150767 r151169 296 296 297 297 add_custom_command( 298 OUTPUT ${SUPPLEMENTAL_DEPENDENCY_FILE} ${WINDOW_CONSTRUCTORS_FILE} 298 OUTPUT ${SUPPLEMENTAL_DEPENDENCY_FILE} ${WINDOW_CONSTRUCTORS_FILE} ${WORKERCONTEXT_CONSTRUCTORS_FILE} 299 299 DEPENDS ${WEBCORE_DIR}/bindings/scripts/preprocess-idls.pl ${SCRIPTS_RESOLVE_SUPPLEMENTAL} ${WebCore_CPP_IDL_FILES} ${IDL_ATTRIBUTES_FILE} 300 COMMAND ${PERL_EXECUTABLE} -I${WEBCORE_DIR}/bindings/scripts ${WEBCORE_DIR}/bindings/scripts/preprocess-idls.pl --defines "${FEATURE_DEFINES_JAVASCRIPT}" --idlFilesList ${IDL_FILES_TMP} --preprocessor "${CODE_GENERATOR_PREPROCESSOR}" --supplementalDependencyFile ${SUPPLEMENTAL_DEPENDENCY_FILE} --idlAttributesFile ${IDL_ATTRIBUTES_FILE} --windowConstructorsFile ${WINDOW_CONSTRUCTORS_FILE} 300 COMMAND ${PERL_EXECUTABLE} -I${WEBCORE_DIR}/bindings/scripts ${WEBCORE_DIR}/bindings/scripts/preprocess-idls.pl --defines "${FEATURE_DEFINES_JAVASCRIPT}" --idlFilesList ${IDL_FILES_TMP} --preprocessor "${CODE_GENERATOR_PREPROCESSOR}" --supplementalDependencyFile ${SUPPLEMENTAL_DEPENDENCY_FILE} --idlAttributesFile ${IDL_ATTRIBUTES_FILE} --windowConstructorsFile ${WINDOW_CONSTRUCTORS_FILE} --workerContextConstructorsFile ${WORKERCONTEXT_CONSTRUCTORS_FILE} 301 301 VERBATIM) 302 302 … … 308 308 ${DERIVED_SOURCES_WEBCORE_DIR} WebDOM CPP 309 309 ${SUPPLEMENTAL_DEPENDENCY_FILE} 310 ${WINDOW_CONSTRUCTORS_FILE}) 310 ${WINDOW_CONSTRUCTORS_FILE} 311 ${WORKERCONTEXT_CONSTRUCTORS_FILE}) 311 312 312 313 # Generate contents for PopupPicker.cpp -
trunk/Source/WebCore/UseJSC.cmake
r150663 r151169 305 305 306 306 add_custom_command( 307 OUTPUT ${SUPPLEMENTAL_DEPENDENCY_FILE} ${WINDOW_CONSTRUCTORS_FILE} 307 OUTPUT ${SUPPLEMENTAL_DEPENDENCY_FILE} ${WINDOW_CONSTRUCTORS_FILE} ${WORKERCONTEXT_CONSTRUCTORS_FILE} 308 308 DEPENDS ${WEBCORE_DIR}/bindings/scripts/preprocess-idls.pl ${SCRIPTS_PREPROCESS_IDLS} ${WebCore_IDL_FILES} ${WebCoreTestSupport_IDL_FILES} 309 COMMAND ${PERL_EXECUTABLE} -I${WEBCORE_DIR}/bindings/scripts ${WEBCORE_DIR}/bindings/scripts/preprocess-idls.pl --defines "${FEATURE_DEFINES_JAVASCRIPT}" --idlFilesList ${IDL_FILES_TMP} --supplementalDependencyFile ${SUPPLEMENTAL_DEPENDENCY_FILE} --windowConstructorsFile ${WINDOW_CONSTRUCTORS_FILE} 309 COMMAND ${PERL_EXECUTABLE} -I${WEBCORE_DIR}/bindings/scripts ${WEBCORE_DIR}/bindings/scripts/preprocess-idls.pl --defines "${FEATURE_DEFINES_JAVASCRIPT}" --idlFilesList ${IDL_FILES_TMP} --supplementalDependencyFile ${SUPPLEMENTAL_DEPENDENCY_FILE} --windowConstructorsFile ${WINDOW_CONSTRUCTORS_FILE} --workerContextConstructorsFile ${WORKERCONTEXT_CONSTRUCTORS_FILE} 310 310 VERBATIM) 311 311 … … 318 318 ${IDL_ATTRIBUTES_FILE} 319 319 ${SUPPLEMENTAL_DEPENDENCY_FILE} 320 ${WINDOW_CONSTRUCTORS_FILE}) 320 ${WINDOW_CONSTRUCTORS_FILE} 321 ${WORKERCONTEXT_CONSTRUCTORS_FILE}) 321 322 322 323 GENERATE_BINDINGS(WebCoreTestSupport_SOURCES … … 328 329 ${IDL_ATTRIBUTES_FILE} 329 330 ${SUPPLEMENTAL_DEPENDENCY_FILE} 330 ${WINDOW_CONSTRUCTORS_FILE}) 331 ${WINDOW_CONSTRUCTORS_FILE} 332 ${WORKERCONTEXT_CONSTRUCTORS_FILE}) -
trunk/Source/WebCore/bindings/scripts/IDLAttributes.txt
r150292 r151169 57 57 ExtendsDOMGlobalObject 58 58 GenerateIsReachable=|Impl|ImplContext|ImplDocument|ImplElementRoot|ImplFrame|ImplOwnerNodeRoot 59 GlobalContext=WindowOnly|WorkerOnly|WindowAndWorker 59 60 Immutable 60 61 ImplementationLacksVTable -
trunk/Source/WebCore/bindings/scripts/preprocess-idls.pl
r150283 r151169 30 30 my $supplementalDependencyFile; 31 31 my $windowConstructorsFile; 32 my $workerContextConstructorsFile; 32 33 my $supplementalMakefileDeps; 33 34 … … 37 38 'supplementalDependencyFile=s' => \$supplementalDependencyFile, 38 39 'windowConstructorsFile=s' => \$windowConstructorsFile, 40 'workerContextConstructorsFile=s' => \$workerContextConstructorsFile, 39 41 'supplementalMakefileDeps=s' => \$supplementalMakefileDeps); 40 42 … … 42 44 die('Must specify an output file using --supplementalDependencyFile.') unless defined($supplementalDependencyFile); 43 45 die('Must specify an output file using --windowConstructorsFile.') unless defined($windowConstructorsFile); 46 die('Must specify an output file using --workerContextConstructorsFile.') unless defined($workerContextConstructorsFile); 44 47 die('Must specify the file listing all IDLs using --idlFilesList.') unless defined($idlFilesList); 45 48 … … 54 57 my %supplementalDependencies; 55 58 my %supplementals; 56 my $constructorAttributesCode = ""; 59 my $windowConstructorsCode = ""; 60 my $workerContextConstructorsCode = ""; 57 61 # Get rid of duplicates in idlFiles array. 58 62 my %idlFileHash = map { $_, 1 } @idlFiles; … … 69 73 my $extendedAttributes = getInterfaceExtendedAttributesFromIDL($idlFileContents); 70 74 unless ($extendedAttributes->{"NoInterfaceObject"}) { 71 $constructorAttributesCode .= GenerateConstructorAttribute($interfaceName, $extendedAttributes); 75 my $globalContext = $extendedAttributes->{"GlobalContext"} || "WindowOnly"; 76 my $attributeCode = GenerateConstructorAttribute($interfaceName, $extendedAttributes); 77 $windowConstructorsCode .= $attributeCode unless $globalContext eq "WorkerOnly"; 78 $workerContextConstructorsCode .= $attributeCode unless $globalContext eq "WindowOnly" 72 79 } 73 80 } … … 78 85 79 86 # Generate DOMWindow Constructors partial interface. 80 open PARTIAL_WINDOW_FH, "> $windowConstructorsFile" or die "Cannot open $windowConstructorsFile\n"; 81 print PARTIAL_WINDOW_FH "partial interface DOMWindow {\n"; 82 print PARTIAL_WINDOW_FH $constructorAttributesCode; 83 print PARTIAL_WINDOW_FH "};\n"; 84 close PARTIAL_WINDOW_FH; 85 my $fullPath = Cwd::realpath($windowConstructorsFile); 86 $supplementalDependencies{$fullPath} = "DOMWindow" if $interfaceNameToIdlFile{"DOMWindow"}; 87 GeneratePartialInterface("DOMWindow", $windowConstructorsCode, $windowConstructorsFile); 88 89 # Generate WorkerContext Constructors partial interface. 90 GeneratePartialInterface("WorkerContext", $workerContextConstructorsCode, $workerContextConstructorsFile); 87 91 88 92 # Resolves partial interfaces dependencies. … … 131 135 132 136 close MAKE_FH; 137 } 138 139 sub GeneratePartialInterface 140 { 141 my $interfaceName = shift; 142 my $attributesCode = shift; 143 my $destinationFile = shift; 144 145 # Generate partial interface for global constructors. 146 open PARTIAL_INTERFACE_FH, "> $destinationFile" or die "Cannot open $destinationFile\n"; 147 print PARTIAL_INTERFACE_FH "partial interface ${interfaceName} {\n"; 148 print PARTIAL_INTERFACE_FH $attributesCode; 149 print PARTIAL_INTERFACE_FH "};\n"; 150 close PARTIAL_INTERFACE_FH; 151 my $fullPath = Cwd::realpath($destinationFile); 152 $supplementalDependencies{$fullPath} = $interfaceName if $interfaceNameToIdlFile{$interfaceName}; 133 153 } 134 154 -
trunk/Source/WebCore/dom/MessageEvent.idl
r150580 r151169 27 27 28 28 [ 29 GlobalContext=WindowAndWorker, 29 30 JSNoStaticTables, 30 31 ConstructorTemplate=Event -
trunk/Source/WebCore/fileapi/Blob.idl
r150292 r151169 30 30 31 31 [ 32 GlobalContext=WindowAndWorker, 32 33 GenerateIsReachable=Impl, 33 34 CustomToJSObject, -
trunk/Source/WebCore/fileapi/FileReader.idl
r149368 r151169 31 31 32 32 [ 33 GlobalContext=WindowAndWorker, 33 34 Conditional=BLOB, 34 35 ActiveDOMObject, -
trunk/Source/WebCore/fileapi/FileReaderSync.idl
r150590 r151169 30 30 31 31 [ 32 NoInterfaceObject,32 GlobalContext=WorkerOnly, 33 33 Conditional=BLOB, 34 34 Constructor, -
trunk/Source/WebCore/html/DOMURL.idl
r149368 r151169 26 26 27 27 [ 28 GlobalContext=WindowAndWorker, 28 29 Conditional=BLOB, 29 30 Constructor, -
trunk/Source/WebCore/html/canvas/ArrayBuffer.idl
r150292 r151169 25 25 26 26 [ 27 GlobalContext=WindowAndWorker, 27 28 GenerateIsReachable=Impl, 28 29 CustomConstructor(unsigned long length), -
trunk/Source/WebCore/html/canvas/DataView.idl
r150292 r151169 25 25 26 26 [ 27 GlobalContext=WindowAndWorker, 27 28 CustomConstructor(ArrayBuffer buffer, optional unsigned long byteOffset, optional unsigned long byteLength), 28 29 CustomToJSObject, -
trunk/Source/WebCore/html/canvas/Float32Array.idl
r149368 r151169 26 26 27 27 [ 28 GlobalContext=WindowAndWorker, 28 29 ConstructorTemplate=TypedArray, 29 30 NumericIndexedGetter, -
trunk/Source/WebCore/html/canvas/Float64Array.idl
r149368 r151169 26 26 27 27 [ 28 GlobalContext=WindowAndWorker, 28 29 ConstructorTemplate=TypedArray, 29 30 NumericIndexedGetter, -
trunk/Source/WebCore/html/canvas/Int16Array.idl
r149368 r151169 25 25 26 26 [ 27 GlobalContext=WindowAndWorker, 27 28 ConstructorTemplate=TypedArray, 28 29 NumericIndexedGetter, -
trunk/Source/WebCore/html/canvas/Int32Array.idl
r149368 r151169 26 26 27 27 [ 28 GlobalContext=WindowAndWorker, 28 29 ConstructorTemplate=TypedArray, 29 30 NumericIndexedGetter, -
trunk/Source/WebCore/html/canvas/Int8Array.idl
r149368 r151169 26 26 27 27 [ 28 GlobalContext=WindowAndWorker, 28 29 ConstructorTemplate=TypedArray, 29 30 NumericIndexedGetter, -
trunk/Source/WebCore/html/canvas/Uint16Array.idl
r149368 r151169 26 26 27 27 [ 28 GlobalContext=WindowAndWorker, 28 29 ConstructorTemplate=TypedArray, 29 30 NumericIndexedGetter, -
trunk/Source/WebCore/html/canvas/Uint32Array.idl
r149368 r151169 26 26 27 27 [ 28 GlobalContext=WindowAndWorker, 28 29 ConstructorTemplate=TypedArray, 29 30 NumericIndexedGetter, -
trunk/Source/WebCore/html/canvas/Uint8Array.idl
r149368 r151169 26 26 27 27 [ 28 GlobalContext=WindowAndWorker, 28 29 ConstructorTemplate=TypedArray, 29 30 NumericIndexedGetter, -
trunk/Source/WebCore/html/canvas/Uint8ClampedArray.idl
r149368 r151169 26 26 27 27 [ 28 GlobalContext=WindowAndWorker, 28 29 ConstructorTemplate=TypedArray, 29 30 NumericIndexedGetter, -
trunk/Source/WebCore/workers/WorkerContext.idl
r149796 r151169 69 69 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP 70 70 // Constructors 71 attribute MessageEventConstructor MessageEvent;72 attribute WorkerLocationConstructor WorkerLocation;73 74 71 [Conditional=CHANNEL_MESSAGING, CustomGetter] attribute MessageChannelConstructor MessageChannel; 75 72 [CustomGetter] attribute EventSourceConstructor EventSource; … … 77 74 #endif 78 75 79 #if defined(ENABLE_BLOB) && ENABLE_BLOB80 attribute BlobConstructor Blob;81 attribute FileReaderConstructor FileReader;82 attribute FileReaderSyncConstructor FileReaderSync;83 #endif84 85 [Conditional=BLOB] attribute DOMURLConstructor URL;86 76 [Conditional=BLOB] attribute DOMURLConstructor webkitURL; // FIXME: deprecate this. 87 88 attribute ArrayBufferConstructor ArrayBuffer; // Usable with new operator89 attribute Int8ArrayConstructor Int8Array; // Usable with new operator90 attribute Uint8ArrayConstructor Uint8Array; // Usable with new operator91 attribute Uint8ClampedArrayConstructor Uint8ClampedArray; // Usable with new operator92 attribute Int16ArrayConstructor Int16Array; // Usable with new operator93 attribute Uint16ArrayConstructor Uint16Array; // Usable with new operator94 attribute Int32ArrayConstructor Int32Array; // Usable with new operator95 attribute Uint32ArrayConstructor Uint32Array; // Usable with new operator96 attribute Float32ArrayConstructor Float32Array; // Usable with new operator97 attribute Float64ArrayConstructor Float64Array; // Usable with new operator98 attribute DataViewConstructor DataView; // Usable with new operator99 77 }; 100 78 -
trunk/Source/WebCore/workers/WorkerLocation.idl
r150590 r151169 28 28 29 29 [ 30 NoInterfaceObject,30 GlobalContext=WorkerOnly, 31 31 Conditional=WORKERS, 32 32 GenerateIsReachable=Impl, -
trunk/Source/cmake/WebKitMacros.cmake
r149796 r151169 39 39 set(_args ${ARGN}) 40 40 list(LENGTH _args _argCount) 41 if (_argCount EQUAL 2)41 if (_argCount EQUAL 3) 42 42 list(GET _args 0 _supplemental_dependency_file) 43 43 if (_supplemental_dependency_file) … … 45 45 endif () 46 46 list(GET _args 1 _window_constructors_file) 47 list(GET _args 2 _workercontext_constructors_file) 47 48 endif () 48 49 … … 53 54 OUTPUT ${_destination}/${_prefix}${_name}.cpp ${_destination}/${_prefix}${_name}.h 54 55 MAIN_DEPENDENCY ${_file} 55 DEPENDS ${BINDING_GENERATOR} ${SCRIPTS_BINDINGS} ${_supplemental_dependency_file} ${_idl_attributes_file} ${_window_constructors_file} 56 DEPENDS ${BINDING_GENERATOR} ${SCRIPTS_BINDINGS} ${_supplemental_dependency_file} ${_idl_attributes_file} ${_window_constructors_file} ${_workercontext_constructors_file} 56 57 COMMAND ${PERL_EXECUTABLE} -I${WEBCORE_DIR}/bindings/scripts ${BINDING_GENERATOR} --defines "${_features}" --generator ${_generator} ${_idl_includes} --outputDir "${_destination}" --preprocessor "${CODE_GENERATOR_PREPROCESSOR}" --idlAttributesFile ${_idl_attributes_file} ${_supplemental_dependency} ${_file} 57 58 WORKING_DIRECTORY ${_base_dir} -
trunk/Tools/ChangeLog
r151166 r151169 1 2013-06-04 Christophe Dumez <ch.dumez@sisa.samsung.com> 2 3 Automatically generate WorkerContext constructor attributes 4 https://bugs.webkit.org/show_bug.cgi?id=117183 5 6 Reviewed by Kentaro Hara. 7 8 Pass new --workerContextConstructorsFile to preprocess-idl.pl for bindings 9 tests. 10 11 * Scripts/webkitpy/bindings/main.py: 12 (BindingsTests.generate_supplemental_dependency): 13 (BindingsTests.main): 14 1 15 2013-06-04 Ryuan Choi <ryuan.choi@samsung.com> 2 16 -
trunk/Tools/Scripts/webkitpy/bindings/main.py
r149796 r151169 62 62 return exit_code 63 63 64 def generate_supplemental_dependency(self, input_directory, supplemental_dependency_file, window_constructors_file ):64 def generate_supplemental_dependency(self, input_directory, supplemental_dependency_file, window_constructors_file, workercontext_constructors_file): 65 65 idl_files_list = tempfile.mkstemp() 66 66 for input_file in os.listdir(input_directory): … … 77 77 '--defines', '', 78 78 '--supplementalDependencyFile', supplemental_dependency_file, 79 '--windowConstructorsFile', window_constructors_file] 79 '--windowConstructorsFile', window_constructors_file, 80 '--workerContextConstructorsFile', workercontext_constructors_file] 80 81 81 82 exit_code = 0 … … 153 154 supplemental_dependency_file = tempfile.mkstemp()[1] 154 155 window_constructors_file = tempfile.mkstemp()[1] 155 if self.generate_supplemental_dependency(input_directory, supplemental_dependency_file, window_constructors_file): 156 workercontext_constructors_file = tempfile.mkstemp()[1] 157 if self.generate_supplemental_dependency(input_directory, supplemental_dependency_file, window_constructors_file, workercontext_constructors_file): 156 158 print 'Failed to generate a supplemental dependency file.' 157 159 os.remove(supplemental_dependency_file)
Note: See TracChangeset
for help on using the changeset viewer.