Skip to content
  • commit-queue@webkit.org's avatar
    2011-06-20 Mark Pilgrim <pilgrim@chromium.org> · 11d6047e
    commit-queue@webkit.org authored
            Reviewed by Adam Barth.
    
            Remove LegacyDefaultOptionalArguments flag from IDL files where it would not change behavior
            https://bugs.webkit.org/show_bug.cgi?id=62904
    
            After bug 62750, there are many IDL files that contain the new
            LegacyDefaultOptionalArguments flag that don't actually need it.
            Some examples:
    
                - the IDL file contains no functions
                - the IDL file contains only functions with no arguments
                - the IDL file contains functions, *all* of which use the
                  [RequiresAllArguments=raise] extended attribute
    
            This patch simplifies such IDL files by removing the
            LegacyDefaultOptionalArguments flag and (if needed) removing the
            [RequiresAllArguments=raise] extended attribute from each function
            declaration. This patch does not make any required arguments optional
            or any optional arguments required. It changes no behavior at all.
    
            No new tests needed, all existing tests pass.
    
            * bindings/scripts/CodeGeneratorJS.pm:
            * bindings/scripts/test/TestInterface.idl:
            * bindings/scripts/test/TestSerializedScriptValueInterface.idl:
            * css/CSSCharsetRule.idl:
            * css/CSSFontFaceRule.idl:
            * css/CSSImportRule.idl:
            * css/CSSPageRule.idl:
            * css/CSSRule.idl:
            * css/CSSStyleRule.idl:
            * css/CSSUnknownRule.idl:
            * css/CSSValue.idl:
            * css/Counter.idl:
            * css/RGBColor.idl:
            * css/Rect.idl:
            * css/StyleSheet.idl:
            * css/WebKitCSSKeyframeRule.idl:
            * css/WebKitCSSTransformValue.idl:
            * dom/Attr.idl:
            * dom/CDATASection.idl:
            * dom/ClientRect.idl:
            * dom/Comment.idl:
            * dom/DOMCoreException.idl:
            * dom/DOMStringMap.idl:
            * dom/DocumentType.idl:
            * dom/Entity.idl:
            * dom/EntityReference.idl:
            * dom/EventException.idl:
            * dom/GeneratedStream.idl:
            * dom/MessageChannel.idl:
            * dom/NodeIterator.idl:
            * dom/Notation.idl:
            * dom/ProcessingInstruction.idl:
            * dom/RangeException.idl:
            * dom/Touch.idl:
            * dom/TreeWalker.idl:
            * fileapi/DOMFileSystem.idl:
            * fileapi/DOMFileSystemSync.idl:
            * fileapi/DirectoryReaderSync.idl:
            * fileapi/File.idl:
            * fileapi/FileEntrySync.idl:
            * fileapi/FileError.idl:
            * fileapi/FileException.idl:
            * fileapi/Metadata.idl:
            * fileapi/OperationNotAllowedException.idl:
            * fileapi/WebKitFlags.idl:
            * html/DOMSettableTokenList.idl:
            * html/HTMLAppletElement.idl:
            * html/HTMLAreaElement.idl:
            * html/HTMLBRElement.idl:
            * html/HTMLBaseElement.idl:
            * html/HTMLBaseFontElement.idl:
            * html/HTMLBlockquoteElement.idl:
            * html/HTMLBodyElement.idl:
            * html/HTMLDListElement.idl:
            * html/HTMLDataListElement.idl:
            * html/HTMLDetailsElement.idl:
            * html/HTMLDirectoryElement.idl:
            * html/HTMLEmbedElement.idl:
            * html/HTMLFontElement.idl:
            * html/HTMLFormElement.idl:
            * html/HTMLFrameElement.idl:
            * html/HTMLFrameSetElement.idl:
            * html/HTMLHRElement.idl:
            * html/HTMLHeadElement.idl:
            * html/HTMLHeadingElement.idl:
            * html/HTMLHtmlElement.idl:
            * html/HTMLIFrameElement.idl:
            * html/HTMLImageElement.idl:
            * html/HTMLIsIndexElement.idl:
            * html/HTMLLIElement.idl:
            * html/HTMLLabelElement.idl:
            * html/HTMLLegendElement.idl:
            * html/HTMLLinkElement.idl:
            * html/HTMLMapElement.idl:
            * html/HTMLMarqueeElement.idl:
            * html/HTMLMenuElement.idl:
            * html/HTMLMetaElement.idl:
            * html/HTMLMeterElement.idl:
            * html/HTMLModElement.idl:
            * html/HTMLOListElement.idl:
            * html/HTMLOptGroupElement.idl:
            * html/HTMLOptionElement.idl:
            * html/HTMLParagraphElement.idl:
            * html/HTMLParamElement.idl:
            * html/HTMLPreElement.idl:
            * html/HTMLProgressElement.idl:
            * html/HTMLQuoteElement.idl:
            * html/HTMLScriptElement.idl:
            * html/HTMLSourceElement.idl:
            * html/HTMLStyleElement.idl:
            * html/HTMLTableCaptionElement.idl:
            * html/HTMLTableCellElement.idl:
            * html/HTMLTableColElement.idl:
            * html/HTMLTitleElement.idl:
            * html/HTMLTrackElement.idl:
            * html/HTMLUListElement.idl:
            * html/ImageData.idl:
            * html/MediaError.idl:
            * html/SpellcheckRange.idl:
            * html/TextMetrics.idl:
            * html/ValidityState.idl:
            * html/VoidCallback.idl:
            * html/canvas/ArrayBuffer.idl:
            * html/canvas/ArrayBufferView.idl:
            * html/canvas/CanvasPattern.idl:
            * html/canvas/CanvasPixelArray.idl:
            * html/canvas/CanvasRenderingContext.idl:
            * html/canvas/DataView.idl:
            * html/canvas/OESStandardDerivatives.idl:
            * html/canvas/OESTextureFloat.idl:
            * html/canvas/WebGLActiveInfo.idl:
            * html/canvas/WebGLBuffer.idl:
            * html/canvas/WebGLContextAttributes.idl:
            * html/canvas/WebGLFramebuffer.idl:
            * html/canvas/WebGLProgram.idl:
            * html/canvas/WebGLRenderbuffer.idl:
            * html/canvas/WebGLShader.idl:
            * html/canvas/WebGLTexture.idl:
            * html/canvas/WebGLUniformLocation.idl:
            * html/canvas/WebGLVertexArrayObjectOES.idl:
            * html/canvas/WebKitLoseContext.idl:
            * inspector/ScriptProfile.idl:
            * inspector/ScriptProfileNode.idl:
            * page/AbstractView.idl:
            * page/BarInfo.idl:
            * page/Coordinates.idl:
            * page/Geoposition.idl:
            * page/MemoryInfo.idl:
            * page/NavigatorUserMediaError.idl:
            * page/Performance.idl:
            * page/PerformanceNavigation.idl:
            * page/PerformanceTiming.idl:
            * page/PositionError.idl:
            * page/Screen.idl:
            * page/SpeechInputEvent.idl:
            * page/SpeechInputResult.idl:
            * page/WebKitAnimation.idl:
            * page/WebKitPoint.idl:
            * page/WorkerNavigator.idl:
            * plugins/DOMMimeType.idl:
            * storage/Database.idl:
            * storage/DatabaseSync.idl:
            * storage/IDBAny.idl:
            * storage/IDBCursorWithValue.idl:
            * storage/IDBDatabaseError.idl:
            * storage/IDBDatabaseException.idl:
            * storage/IDBKey.idl:
            * storage/IDBVersionChangeEvent.idl:
            * storage/IDBVersionChangeRequest.idl:
            * storage/SQLError.idl:
            * storage/SQLException.idl:
            * storage/SQLResultSet.idl:
            * svg/SVGAElement.idl:
            * svg/SVGAltGlyphElement.idl:
            * svg/SVGAngle.idl:
            * svg/SVGAnimateColorElement.idl:
            * svg/SVGAnimateElement.idl:
            * svg/SVGAnimateMotionElement.idl:
            * svg/SVGAnimateTransformElement.idl:
            * svg/SVGAnimatedAngle.idl:
            * svg/SVGAnimatedBoolean.idl:
            * svg/SVGAnimatedEnumeration.idl:
            * svg/SVGAnimatedInteger.idl:
            * svg/SVGAnimatedLength.idl:
            * svg/SVGAnimatedLengthList.idl:
            * svg/SVGAnimatedNumber.idl:
            * svg/SVGAnimatedNumberList.idl:
            * svg/SVGAnimatedPreserveAspectRatio.idl:
            * svg/SVGAnimatedRect.idl:
            * svg/SVGAnimatedString.idl:
            * svg/SVGAnimatedTransformList.idl:
            * svg/SVGCircleElement.idl:
            * svg/SVGClipPathElement.idl:
            * svg/SVGColor.idl:
            * svg/SVGComponentTransferFunctionElement.idl:
            * svg/SVGCursorElement.idl:
            * svg/SVGDefsElement.idl:
            * svg/SVGDescElement.idl:
            * svg/SVGElement.idl:
            * svg/SVGEllipseElement.idl:
            * svg/SVGExternalResourcesRequired.idl:
            * svg/SVGFEBlendElement.idl:
            * svg/SVGFEColorMatrixElement.idl:
            * svg/SVGFEComponentTransferElement.idl:
            * svg/SVGFECompositeElement.idl:
            * svg/SVGFEConvolveMatrixElement.idl:
            * svg/SVGFEDiffuseLightingElement.idl:
            * svg/SVGFEDisplacementMapElement.idl:
            * svg/SVGFEDistantLightElement.idl:
            * svg/SVGFEFloodElement.idl:
            * svg/SVGFEFuncAElement.idl:
            * svg/SVGFEFuncBElement.idl:
            * svg/SVGFEFuncGElement.idl:
            * svg/SVGFEFuncRElement.idl:
            * svg/SVGFEImageElement.idl:
            * svg/SVGFEMergeElement.idl:
            * svg/SVGFEMergeNodeElement.idl:
            * svg/SVGFEOffsetElement.idl:
            * svg/SVGFEPointLightElement.idl:
            * svg/SVGFESpecularLightingElement.idl:
            * svg/SVGFESpotLightElement.idl:
            * svg/SVGFETileElement.idl:
            * svg/SVGFETurbulenceElement.idl:
            * svg/SVGFilterPrimitiveStandardAttributes.idl:
            * svg/SVGFitToViewBox.idl:
            * svg/SVGFontElement.idl:
            * svg/SVGFontFaceElement.idl:
            * svg/SVGFontFaceFormatElement.idl:
            * svg/SVGFontFaceNameElement.idl:
            * svg/SVGFontFaceSrcElement.idl:
            * svg/SVGFontFaceUriElement.idl:
            * svg/SVGForeignObjectElement.idl:
            * svg/SVGGElement.idl:
            * svg/SVGGlyphElement.idl:
            * svg/SVGGradientElement.idl:
            * svg/SVGHKernElement.idl:
            * svg/SVGImageElement.idl:
            * svg/SVGLangSpace.idl:
            * svg/SVGLength.idl:
            * svg/SVGLengthList.idl:
            * svg/SVGLineElement.idl:
            * svg/SVGLinearGradientElement.idl:
            * svg/SVGMPathElement.idl:
            * svg/SVGMaskElement.idl:
            * svg/SVGMatrix.idl:
            * svg/SVGMetadataElement.idl:
            * svg/SVGMissingGlyphElement.idl:
            * svg/SVGNumber.idl:
            * svg/SVGNumberList.idl:
            * svg/SVGPaint.idl:
            * svg/SVGPathSeg.idl:
            * svg/SVGPathSegArcAbs.idl:
            * svg/SVGPathSegArcRel.idl:
            * svg/SVGPathSegClosePath.idl:
            * svg/SVGPathSegCurvetoCubicAbs.idl:
            * svg/SVGPathSegCurvetoCubicRel.idl:
            * svg/SVGPathSegCurvetoCubicSmoothAbs.idl:
            * svg/SVGPathSegCurvetoCubicSmoothRel.idl:
            * svg/SVGPathSegCurvetoQuadraticAbs.idl:
            * svg/SVGPathSegCurvetoQuadraticRel.idl:
            * svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl:
            * svg/SVGPathSegCurvetoQuadraticSmoothRel.idl:
            * svg/SVGPathSegLinetoAbs.idl:
            * svg/SVGPathSegLinetoHorizontalAbs.idl:
            * svg/SVGPathSegLinetoHorizontalRel.idl:
            * svg/SVGPathSegLinetoRel.idl:
            * svg/SVGPathSegLinetoVerticalAbs.idl:
            * svg/SVGPathSegLinetoVerticalRel.idl:
            * svg/SVGPathSegList.idl:
            * svg/SVGPathSegMovetoAbs.idl:
            * svg/SVGPathSegMovetoRel.idl:
            * svg/SVGPatternElement.idl:
            * svg/SVGPoint.idl:
            * svg/SVGPointList.idl:
            * svg/SVGPolygonElement.idl:
            * svg/SVGPolylineElement.idl:
            * svg/SVGPreserveAspectRatio.idl:
            * svg/SVGRadialGradientElement.idl:
            * svg/SVGRect.idl:
            * svg/SVGRectElement.idl:
            * svg/SVGRenderingIntent.idl:
            * svg/SVGScriptElement.idl:
            * svg/SVGSetElement.idl:
            * svg/SVGStopElement.idl:
            * svg/SVGStringList.idl:
            * svg/SVGSwitchElement.idl:
            * svg/SVGSymbolElement.idl:
            * svg/SVGTRefElement.idl:
            * svg/SVGTSpanElement.idl:
            * svg/SVGTextElement.idl:
            * svg/SVGTextPathElement.idl:
            * svg/SVGTextPositioningElement.idl:
            * svg/SVGTitleElement.idl:
            * svg/SVGTransform.idl:
            * svg/SVGTransformList.idl:
            * svg/SVGTransformable.idl:
            * svg/SVGURIReference.idl:
            * svg/SVGUnitTypes.idl:
            * svg/SVGUseElement.idl:
            * svg/SVGVKernElement.idl:
            * svg/SVGViewElement.idl:
            * svg/SVGViewSpec.idl:
            * svg/SVGZoomAndPan.idl:
            * svg/SVGZoomEvent.idl:
            * testing/Internals.idl:
            * webaudio/AudioChannelMerger.idl:
            * webaudio/AudioChannelSplitter.idl:
            * webaudio/AudioDestinationNode.idl:
            * webaudio/AudioGain.idl:
            * webaudio/AudioGainNode.idl:
            * webaudio/AudioProcessingEvent.idl:
            * webaudio/AudioSourceNode.idl:
            * webaudio/BiquadFilterNode.idl:
            * webaudio/ConvolverNode.idl:
            * webaudio/DelayNode.idl:
            * webaudio/DynamicsCompressorNode.idl:
            * webaudio/HighPass2FilterNode.idl:
            * webaudio/JavaScriptAudioNode.idl:
            * webaudio/LowPass2FilterNode.idl:
            * webaudio/OfflineAudioCompletionEvent.idl:
            * workers/SharedWorker.idl:
            * workers/SharedWorkerContext.idl:
            * workers/WorkerLocation.idl:
            * xml/XMLHttpRequestException.idl:
            * xml/XMLHttpRequestProgressEvent.idl:
            * xml/XPathException.idl:
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@89269 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    11d6047e