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