a0231379615be81451d28aa77611ab339472696b
[WebKit-https.git] / JavaScriptGlue / ChangeLog
1 2006-06-24  David Kilzer  <ddkilzer@kilzer.net>
2
3         Reviewed by Timothy.
4
5         * Info.plist: Fixed copyright to include 2003-2006.
6
7 === JavaScriptGlue-521.13 ===
8         
9 2006-06-20  Geoffrey Garen  <ggaren@apple.com>
10
11         Reviewed by Anders.
12         
13         - Required for JS API: Rename propList to getPropertyList and have it
14         take its target property list by reference so that subclasses can
15         add properties to the list before calling through to their superclasses.
16
17         * JSUtils.cpp:
18         (KJSValueToCFTypeInternal):
19         * JSValueWrapper.cpp:
20         (JSValueWrapper::JSObjectCopyPropertyNames):
21         * UserObjectImp.cpp:
22         (UserObjectImp::getPropertyList):
23         * UserObjectImp.h:
24
25 2006-06-15  Timothy Hatcher  <timothy@apple.com>
26
27         Reviewed by Geoff and Darin.
28         
29         Prefer the DWARF debugging symbols format for use in Xcode 2.3.
30
31         * JavaScriptGlue.xcodeproj/project.pbxproj:
32
33 2006-06-12  Geoffrey Garen  <ggaren@apple.com>
34
35         Reviewed by TimO, Maciej.
36         
37         - JSGlue part of merging InterpreterImp into Interpreter.
38         
39         Since there's now a kjs forwarding header, I moved all forwarding
40         headers into a "ForwardingHeaders" directory, like in WebCore.
41
42         * ForwardingHeaders: Added.
43         * ForwardingHeaders/kjs: Added.
44         * ForwardingHeaders/kjs/ExecState.h: Added.
45         * ForwardingHeaders/wtf: Added.
46         * JavaScriptGlue.xcodeproj/project.pbxproj:
47         * config.h:
48         * wtf: Removed.
49         * wtf/AlwaysInline.h: Removed.
50         * wtf/Assertions.h: Removed.
51         * wtf/FastMalloc.h: Removed.
52         * wtf/Forward.h: Removed.
53         * wtf/HashCountedSet.h: Removed.
54         * wtf/HashSet.h: Removed.
55         * wtf/Noncopyable.h: Removed.
56         * wtf/OwnArrayPtr.h: Removed.
57         * wtf/OwnPtr.h: Removed.
58         * wtf/PassRefPtr.h: Removed.
59         * wtf/Platform.h: Removed.
60         * wtf/RefPtr.h: Removed.
61         * wtf/Vector.h: Removed.
62
63 === JavaScriptGlue-521.10 ===
64
65 2006-05-09  Maciej Stachowiak  <mjs@apple.com>
66
67         Rubber stamped by Anders.
68         
69         - renamed kxmlcore to wtf
70         
71         kxmlcore --> wtf
72         KXMLCore --> WTF
73         KXC --> WTF
74
75         * config.h:
76         * kxmlcore: Removed.
77         * kxmlcore/AlwaysInline.h: Removed.
78         * kxmlcore/Assertions.h: Removed.
79         * kxmlcore/FastMalloc.h: Removed.
80         * kxmlcore/Forward.h: Removed.
81         * kxmlcore/HashCountedSet.h: Removed.
82         * kxmlcore/HashSet.h: Removed.
83         * kxmlcore/Noncopyable.h: Removed.
84         * kxmlcore/OwnArrayPtr.h: Removed.
85         * kxmlcore/OwnPtr.h: Removed.
86         * kxmlcore/PassRefPtr.h: Removed.
87         * kxmlcore/Platform.h: Removed.
88         * kxmlcore/RefPtr.h: Removed.
89         * kxmlcore/Vector.h: Removed.
90         * wtf: Added.
91
92 2006-04-11  Darin Adler  <darin@apple.com>
93
94         - try to fix Windows build
95
96         * kxmlcore/HashForward.h: Removed.
97
98 2006-04-10  Darin Adler  <darin@apple.com>
99
100         Rubber-stamped by John Sullivan.
101
102         - added forwarding headers for the new Forward.h and HashForward.h files
103
104         * kxmlcore/Forward.h: Added.
105         * kxmlcore/HashForward.h: Added.
106
107 2006-04-04  Timothy Hatcher  <timothy@apple.com>
108
109         Reviewed by Darin.
110
111         The Debug and Release frameworks are now built with install paths relative to the build products directory.
112         This removes the need for other projects to build with -framework WebCore and -framework JavaScriptCore. 
113
114         * JavaScriptGlue.xcodeproj/project.pbxproj:
115
116 2006-04-02  Eric Seidel  <eseidel@apple.com>
117
118         Reviewed by andersca.
119
120         Add missing forwarding header.
121
122         * kxmlcore/Vector.h: Added.
123
124 2006-03-31  Geoffrey Garen  <ggaren@apple.com>
125
126         Reviewed by Darin.
127
128         - Fixed <rdar://problem/4430836> JavaScript patch crashing Quartz
129         Composer
130
131         JSValueWrappers used to hold on to the ExecState that pertained at
132         the time of their creation. Since ExecStates are transient, that
133         design was totally bogus, and it would crash once the ExecState had
134         been deallocated.
135
136         Unfortunately, there's no clean solution to this problem, since
137         the JSGlue API has no notion of state. The solution here is to use
138         a shared, global ExecState for the purpose of JSGlue calls. Given
139         the pre-existing limitations in the JSGlue API, this design
140         shouldn't actually introduce any new limitations (see comments in
141         JSValueWrapper.cpp).
142
143         I tested with Quartz Composer and PAC files, neither of which are
144         layout-testable.
145         
146         * JSUtils.cpp:
147         (KJSValueToJSObject):
148         * JSValueWrapper.cpp:
149         (JSValueWrapper::JSValueWrapper):
150         (JSValueWrapper::GetValue):
151         (getProcessGlobalExecState):
152         (JSValueWrapper::JSObjectCopyPropertyNames):
153         (JSValueWrapper::JSObjectCopyProperty):
154         (JSValueWrapper::JSObjectSetProperty):
155         (JSValueWrapper::JSObjectCallFunction):
156         (JSValueWrapper::JSObjectCopyCFValue):
157         * JSValueWrapper.h:
158
159         Also added a test harness file. It was helpful while I was testing,
160         and may come in handy in the future:
161         
162         * JavaScriptGlue.xcodeproj/project.pbxproj:
163         testjsglue.cpp: Added.
164
165 2006-03-28  Darin Adler  <darin@apple.com>
166
167         Reviewed by Geoff.
168
169         - added a build step that checks for init routines
170
171         * JavaScriptGlue.xcodeproj/project.pbxproj: Added a custom build phase that invokes the
172         check-for-global-initializers script.
173
174 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
175
176         Not reviewed, but I noticed these trivial extra changes were needed to avoid
177         breaking the build with my reviewed patch for:
178         
179         http://bugzilla.opendarwin.org/show_bug.cgi?id=7387
180         
181         Add config.h, includes of it, and Platform.h forwarding header.
182
183         * JSBase.cpp:
184         * JSObject.cpp:
185         * JSRun.cpp:
186         * JSUtils.cpp:
187         * JSValueWrapper.cpp:
188         * JavaScriptGlue.cpp:
189         * UserObjectImp.cpp:
190         * config.h: Added.
191         * kxmlcore/Platform.h: Added.
192
193 === JavaScriptGlue-521.7 ===
194
195 2006-02-10  Geoffrey Garen  <ggaren@apple.com>
196
197         Reviewed by eric.
198
199         - Fixed build.
200
201         * UserObjectImp.cpp:
202         (UserObjectImp::toPrimitive):
203         * UserObjectImp.h:
204
205 2006-02-03  Timothy Hatcher  <timothy@apple.com>
206
207         Reviewed by Justin.
208
209         Renamed configuration names to Debug, Release and Production.
210
211         * JavaScriptGlue.xcodeproj/project.pbxproj:
212
213 2006-02-01  Darin Adler  <darin@apple.com>
214
215         - added some forwarding headers to make new JavaScriptCore changes work
216
217         * kxmlcore/Assertions.h: Added.
218         * kxmlcore/Noncopyable.h: Added.
219         * kxmlcore/OwnPtr.h: Added.
220         * kxmlcore/OwnArrayPtr.h: Added.
221
222 2006-01-16  Timothy Hatcher  <timothy@apple.com>
223
224         Adding the license header to all files so we can
225         move JavaScriptGlue into the open source repository.
226
227         * LICENSE: Added.
228         * JSBase.cpp: license header added.
229         * JSBase.h: ditto.
230         * JSObject.cpp: ditto.
231         * JSObject.h: ditto.
232         * JSRun.cpp: ditto.
233         * JSRun.h: ditto.
234         * JSUtils.cpp: ditto.
235         * JSUtils.h: ditto.
236         * JSValueWrapper.cpp: ditto.
237         * JSValueWrapper.h: ditto.
238         * JavaScriptGlue.cpp: ditto.
239         * JavaScriptGlue.h: ditto.
240         * UserObjectImp.cpp: ditto.
241         * UserObjectImp.h: ditto.
242
243 2005-12-21  Timothy Hatcher  <timothy@apple.com>
244
245         * JavaScriptGlue.xcodeproj/project.pbxproj:
246           Set tab width to 8, indent width to 4 and uses tabs to false per file.
247
248 2005-12-19  Darin Adler  <darin@apple.com>
249
250         Reviewed by Geoff Garen and Eric Seidel.
251
252         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4923
253           stop using <ostream> in WebCore, eliminating the <cmath> troubles it causes
254
255         * kxmlcore/AlwaysInline.h: Added.
256
257 2005-12-15  Darin Adler  <darin@apple.com>
258
259         Reviewed by Maciej.
260
261         * JSRun.cpp: (JSRun::Evaluate): Updated for change to Interpreter::evaluate.
262
263 2005-12-15  Darin Adler  <darin@apple.com>
264
265         Reviewed by Tim Hatcher.
266
267         * JavaScriptGlue.xcodeproj/project.pbxproj: Removed some redundant build
268         settings, turned off prebinding explicitly for our Development and
269         Deployment builds, remove .exp file from sources. All "clean-up".
270
271 === Safari-521~5 ===
272
273 2005-12-13  Geoffrey Garen  <ggaren@apple.com>
274
275     - Fixed build after Anders's last checkin to JavaScriptCore.
276     
277         Reviewed by darin.
278
279         * UserObjectImp.cpp:
280         (UserObjectImp::userObjectGetter): Updated to reflect new argument that 
281     getters take (unused here).
282         * UserObjectImp.h:
283
284 2005-12-13  Maciej Stachowiak  <mjs@apple.com>
285
286         Reviewed by Eric.
287
288     - added forwarding header for HashCountedSet
289
290         * kxmlcore/HashCountedSet.h: Added.
291
292 2005-12-10  Darin Adler  <darin@apple.com>
293
294         Rubber stamped by Maciej.
295
296         - updated for KJS class renaming
297
298         * many files and functions
299
300 2005-12-10  Darin Adler  <darin@apple.com>
301
302         Reviewed by Maciej.
303
304         - eliminated the old Undefined(), Null(), Boolean(), Number(), and String()
305
306         Code now uses jsUndefined(), jsNull(), jsBoolean(), jsNumber(), and jsString().
307
308         * JSUtils.cpp:
309         (JSObjectKJSValue):
310         * UserObjectImp.cpp:
311         (UserObjectImp::callAsFunction):
312         (UserObjectImp::toPrimitive):
313
314 2005-12-05  Maciej Stachowiak  <mjs@apple.com>
315
316         - added new forwarding headers
317
318         * kxmlcore/PassRefPtr.h: Added.
319         * kxmlcore/RefPtr.h: Added.
320
321 2005-12-05  Maciej Stachowiak  <mjs@apple.com>
322
323         * kxmlcore/PassRefPtr.h: Added.
324
325 2005-11-26  Maciej Stachowiak  <mjs@apple.com>
326
327         Rubber stamped by Eric.
328
329     - renamed InterpreterLock to JSLock
330
331         * JSUtils.cpp:
332         (CFStringToUString):
333         (JSObjectKJSValue):
334         (KJSValueToCFTypeInternal):
335         * JSValueWrapper.cpp:
336         (JSValueWrapper::JSObjectCopyPropertyNames):
337         (JSValueWrapper::JSObjectCopyProperty):
338         (JSValueWrapper::JSObjectSetProperty):
339         (JSValueWrapper::JSObjectCallFunction):
340         (JSValueWrapper::JSObjectCopyCFValue):
341         * JavaScriptGlue.cpp:
342         (JSRunCreate):
343         (JSCollect):
344         (JSLockInterpreter):
345         (JSUnlockInterpreter):
346         * UserObjectImp.cpp:
347         (UserObjectImp::callAsFunction):
348
349 2005-11-16  Maciej Stachowiak  <mjs@apple.com>
350
351         Reviewed by Geoff.
352
353     Updated to use new API to drop all locks.
354
355         * JavaScriptGlue.cpp:
356         (JSLockInterpreter):
357         (JSUnlockInterpreter):
358         * UserObjectImp.cpp:
359         (UserObjectImp::callAsFunction):
360
361 2005-11-14  Geoffrey Garen  <ggaren@apple.com>
362
363         Reviewed by mjs.
364
365         - Part of the fix for <rdar://problem/4342216> Installer crash in 
366           KJS::ValueImp::marked() when garbage collector runs inside call to 
367           ConstantValues::init()
368           
369         Added locking in JSRunCreate, since JSRun::JSRun constructs an object.
370         
371         * JavaScriptGlue.cpp:
372         (JSRunCreate):
373
374 2005-11-10  Geoffrey Garen  <ggaren@apple.com>
375
376         Reviewed by Maciej.
377
378         - Fixed <rdar://problem/4334445> installer crashed on my 
379           dual g4 450Mhz after clicking language
380
381         - Reversed backwards NULL check.
382         - Inserted guards against NULL fJSUserObject data member.
383         - Cleaned up some style.
384
385         * JSUtils.cpp:
386         (KJSValueToCFTypeInternal):
387         * UserObjectImp.cpp:
388         (UserObjectImp::~UserObjectImp):
389         (UserObjectImp::callAsFunction):
390         (UserObjectImp::userObjectGetter):
391         (UserObjectImp::getOwnPropertySlot):
392         (UserObjectImp::put):
393         (UserObjectImp::mark):
394
395 2005-11-04  Timothy Hatcher  <timothy@apple.com>
396
397         Reviewed by Darin.
398
399         * JavaScriptGlue.xcodeproj/project.pbxproj:
400           Fixed the FRAMEWORK_SEARCH_PATHS to look in the WebKit
401           Frameworks for the Default config.
402
403 2005-11-03  Timothy Hatcher  <timothy@apple.com>
404
405         Reviewed by Darin and Vicki.
406
407         * JavaScriptGlue.xcodeproj/project.pbxproj:
408           Change to use $(SYSTEM_LIBRARY_DIR) consistently and place
409           $(NEXT_ROOT) in a few spots to make build-root work.
410
411 2005-11-01  Maciej Stachowiak  <mjs@apple.com>
412
413     Reviewed by: Eric.
414     
415         <rdar://problem/4324107> get JavaScriptGlue working with TOT JavaScriptCore again
416
417     - reverted all this stuff to use ReferenceList instead of IdentifierSequencedSet
418
419         * JSUtils.cpp:
420         (KJSValueToCFTypeInternal):
421         * JSValueWrapper.cpp:
422         (JSValueWrapper::JSObjectCopyPropertyNames):
423         * UserObjectImp.cpp:
424         (UserObjectImp::propList):
425         * UserObjectImp.h:
426
427 2005-10-11  Timothy Hatcher  <timothy@apple.com>
428
429         Setup the proper Framework search path for the Default config.
430         Prepping for a TOT submission and build by B&I.
431
432         * JavaScriptGlue.xcodeproj/project.pbxproj:
433
434 2005-10-10  Darin Adler  <darin@apple.com>
435
436         Reviewed by Eric.
437
438         - converted tabs to spaces, NULL to 0, added some (void), got rid of __ prefixes
439           in headers (reserved for compiler/library)
440
441         * Info.plist:
442         * JSBase.cpp:
443         * JSBase.h:
444         * JSObject.cpp:
445         * JSObject.h:
446         * JSRun.cpp:
447         * JSRun.h:
448         * JSUtils.cpp:
449         * JSUtils.h:
450         * JSValueWrapper.cpp:
451         * JSValueWrapper.h:
452         * JavaScriptGlue.cpp:
453         * JavaScriptGlue.h:
454         * UserObjectImp.cpp:
455         * UserObjectImp.h:
456
457 2005-10-10  Darin Adler  <darin@apple.com>
458
459         * .cvsignore: Added. Ignore Makefile.in and Makefile.
460
461 2005-10-07  Timothy Hatcher  <timothy@apple.com>
462
463         Reviewed by Maciej.
464         
465         Build fix, needed to disable RTTI. Upgraded to a native target.
466
467         * JavaScriptGlue.xcodeproj/project.pbxproj:
468         * Info.plist
469
470 2005-10-05  Maciej Stachowiak  <mjs@apple.com>
471
472         Reviewed by Eric and Darin.
473
474     <rdar://problem/4260506> Port JavaScriptGlue to TOT JavaScriptCore
475
476         * JSRun.cpp:
477         (JSRun::JSRun):
478         (JSRun::GlobalObject):
479         * JSRun.h:
480         (JSInterpreter::JSInterpreter):
481         * JSUtils.cpp:
482         (KJSValueToJSObject):
483         (JSObjectKJSValue):
484         (KJSValueToCFTypeInternal):
485         (KJSValueToCFType):
486         * JSUtils.h:
487         * JSValueWrapper.cpp:
488         (JSValueWrapper::JSValueWrapper):
489         (JSValueWrapper::GetValue):
490         (JSValueWrapper::JSObjectCopyPropertyNames):
491         (JSValueWrapper::JSObjectCopyProperty):
492         (JSValueWrapper::JSObjectSetProperty):
493         (JSValueWrapper::JSObjectCallFunction):
494         (JSValueWrapper::JSObjectMark):
495         * JSValueWrapper.h:
496         * JavaScriptGlue.cpp:
497         (JSRunCopyGlobalObject):
498         * JavaScriptGlue.xcodeproj/project.pbxproj:
499         * Makefile.am: Added.
500         * UserObjectImp.cpp:
501         (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
502         (UserObjectImp::UserObjectImp):
503         (UserObjectImp::callAsFunction):
504         (UserObjectImp::getPropertyNames):
505         (UserObjectImp::userObjectGetter):
506         (UserObjectImp::getOwnPropertySlot):
507         (UserObjectImp::put):
508         (UserObjectImp::toPrimitive):
509         (UserObjectImp::mark):
510         * UserObjectImp.h:
511         * kxmlcore/FastMalloc.h: Added.
512         * kxmlcore/HashSet.h: Added.
513
514 2005-09-14  Maciej Stachowiak  <mjs@apple.com>
515
516         Reviewed by Geoff.
517
518     - fixed <rdar://problem/4214783> REGRESSION: kjs_fast_malloc crash due to lack of locking on multiple threads (seen selecting volumes in the installer)
519
520     Make sure to lock using the InterpreterLock class in all places that need it
521     (including anything that uses the collector, the parser, the protect count hash table,
522     and anything that allocates via fast_malloc).
523
524         * JSUtils.cpp:
525         (CFStringToUString):
526         (JSObjectKJSValue):
527         (KJSValueToCFTypeInternal):
528         * JSUtils.h:
529         * JSValueWrapper.cpp:
530         (JSValueWrapper::JSObjectCopyPropertyNames):
531         (JSValueWrapper::JSObjectCopyProperty):
532         (JSValueWrapper::JSObjectSetProperty):
533         (JSValueWrapper::JSObjectCallFunction):
534         (JSValueWrapper::JSObjectCopyCFValue):
535         * JavaScriptGlue.cpp:
536         (JSCollect):
537
538 2005-09-27  Adele Peterson  <adele@apple.com>
539
540         Reviewed by Maciej.
541
542         <rdar://problem/4223297> JavaScriptGlue: Submit 64-bit compatible versions of your API and SPIs by September 15
543
544         * JavaScriptGlue.h: Changed UInt32 to CFTypeID for JSTypeID
545
546 2005-09-06  Geoffrey Garen  <ggaren@apple.com>
547
548         -upgraded project files to XCode 2.1
549
550         * JavaScriptGlue.pbproj/project.pbxproj: Removed.
551         * JavaScriptGlue.xcodeproj/.cvsignore: Added.
552         * JavaScriptGlue.xcodeproj/project.pbxproj: Added.
553
554 2005-09-01  Maciej Stachowiak  <mjs@apple.com>
555
556         Rubber stamped by hyatt.
557
558     - initial import of JavaScriptGlue into our repository
559
560         * English.lproj/InfoPlist.strings: Added.
561         * JSBase.cpp: Added.
562         (JSBase::JSBase):
563         (JSBase::~JSBase):
564         (JSBase::Retain):
565         (JSBase::Release):
566         (JSBase::RetainCount):
567         (JSBase::GetTypeID):
568         (JSBase::CopyDescription):
569         (JSBase::Equal):
570         * JSBase.h: Added.
571         * JSObject.cpp: Added.
572         (JSUserObject::JSUserObject):
573         (JSUserObject::~JSUserObject):
574         (JSUserObject::CopyPropertyNames):
575         (JSUserObject::CopyProperty):
576         (JSUserObject::SetProperty):
577         (JSUserObject::ImplementsCall):
578         (JSUserObject::CallFunction):
579         (JSUserObject::CopyCFValue):
580         (JSUserObject::Equal):
581         (JSUserObject::Mark):
582         (JSUserObject::GetData):
583         * JSObject.h: Added.
584         (JSUserObject::DataType):
585         * JSRun.cpp: Added.
586         (JSRun::JSRun):
587         (JSRun::~JSRun):
588         (JSRun::Flags):
589         (JSRun::GetSource):
590         (JSRun::GlobalObject):
591         (JSRun::GetInterpreter):
592         (JSRun::Evaluate):
593         (JSRun::CheckSyntax):
594         * JSRun.h: Added.
595         (JSInterpreter::JSInterpreter):
596         (JSInterpreter::JSInterpreter::~JSInterpreter):
597         (JSInterpreter::Flags):
598         * JSUtils.cpp: Added.
599         (CFStringToUString):
600         (UStringToCFString):
601         (CFStringToIdentifier):
602         (IdentifierToCFString):
603         (KJSValueToJSObject):
604         (JSObjectKJSValue):
605         (KJSValueToCFTypeInternal):
606         (KJSValueToCFType):
607         (GetCFNull):
608         * JSUtils.h: Added.
609         (RetainCFType):
610         (ReleaseCFType):
611         * JSValueWrapper.cpp: Added.
612         (JSValueWrapper::JSValueWrapper):
613         (JSValueWrapper::~JSValueWrapper):
614         (JSValueWrapper::GetValue):
615         (JSValueWrapper::GetExecState):
616         (JSValueWrapper::GetJSObectCallBacks):
617         (JSValueWrapper::JSObjectDispose):
618         (JSValueWrapper::JSObjectCopyPropertyNames):
619         (JSValueWrapper::JSObjectCopyProperty):
620         (JSValueWrapper::JSObjectSetProperty):
621         (JSValueWrapper::JSObjectCallFunction):
622         (JSValueWrapper::JSObjectCopyCFValue):
623         (JSValueWrapper::JSObjectMark):
624         * JSValueWrapper.h: Added.
625         * JavaScriptGlue.cpp: Added.
626         (JSSetCFNull):
627         (JSGetCFNull):
628         (JSRetain):
629         (JSRelease):
630         (JSCopyDescription):
631         (JSEqual):
632         (JSGetTypeID):
633         (JSGetRetainCount):
634         (JSObjectCreate):
635         (JSObjectCreateInternal):
636         (JSObjectCopyCFValue):
637         (JSObjectGetData):
638         (JSObjectCopyProperty):
639         (JSObjectSetProperty):
640         (JSObjectCallFunction):
641         (JSRunCreate):
642         (JSRunCopySource):
643         (JSRunCopyGlobalObject):
644         (JSRunEvaluate):
645         (JSRunCheckSyntax):
646         (JSCollect):
647         (JSTypeGetCFArrayCallBacks):
648         (JSCFRetain):
649         (JSCFRelease):
650         (JSObjectCreateWithCFType):
651         (CFJSObjectDispose):
652         (JSObjectCopyPropertyNames):
653         (CFJSObjectCopyProperty):
654         (CFJSObjectSetProperty):
655         (CFJSObjectCopyCFValue):
656         (CFJSObjectEqual):
657         (CFJSObjectCopyPropertyNames):
658         (JSCreateCFArrayFromJSArray):
659         (JSCreateJSArrayFromCFArray):
660         (JSLockInterpreter):
661         (JSUnlockInterpreter):
662         * JavaScriptGlue.exp: Added.
663         * JavaScriptGlue.h: Added.
664         * JavaScriptGlue.pbproj/project.pbxproj: Added.
665         * UserObjectImp.cpp: Added.
666         (UserObjectPrototypeImp::UserObjectPrototypeImp):
667         (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
668         (UserObjectImp::UserObjectImp):
669         (UserObjectImp::~UserObjectImp):
670         (UserObjectImp::classInfo):
671         (UserObjectImp::implementsCall):
672         (UserObjectImp::call):
673         (UserObjectImp::propList):
674         (UserObjectImp::hasProperty):
675         (UserObjectImp::get):
676         (UserObjectImp::put):
677         (UserObjectImp::GetJSUserObject):
678         (UserObjectImp::toPrimitive):
679         (UserObjectImp::toBoolean):
680         (UserObjectImp::toNumber):
681         (UserObjectImp::toString):
682         (UserObjectImp::mark):
683         * UserObjectImp.h: Added.
684