<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>15931</bug_id>
          
          <creation_ts>2007-11-10 03:41:09 -0800</creation_ts>
          <short_desc>Eliminate Instance::createBindingForLanguageInstance()</short_desc>
          <delta_ts>2011-09-06 23:09:40 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore JavaScript</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alp Toker">alp</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>barraclough</cc>
    
    <cc>ggaren</cc>
    
    <cc>michael.goddard</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>60821</commentid>
    <comment_count>0</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-10 03:41:09 -0800</bug_when>
    <thetext>Instance::createBindingForLanguageInstance() and Instance::createRuntimeObject() currently hard-code all possible binding types in a large switch statement.

This is a bottleneck for increasing the modularity of JavaScriptCore. It can be fixed fairly easily but its many callers throughout JavaScriptCore, WebCore and WebKit will need to be refactored to accommodate the change.

The fix will probably involve getting callers to instantiate the object wrapper directly instead of calling this utility function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>64901</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Goddard">michael.goddard</who>
    <bug_when>2007-12-20 18:05:27 -0800</bug_when>
    <thetext>Hmm.. I&apos;d like to see the ability to use Object.prototype functions (like hasOwnProperty etc) on runtime objects (in particular Qt ones).. either RuntimeObjectImp inherits from Object, or certain functions are copied over, or different language bindings could have different runtime JSObjects..

If the callers have to instantiate the object wrappers directly, this would be a bit more difficult than having a centralized convenience function.

I don&apos;t like having the Instance API itself (the non static functions) exposed, however, since I don&apos;t think they add value.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>