33 Commits

Author SHA1 Message Date
rogerl%netscape.com
09e69e2106 New (incomplete but functional) implementation of operator overriding.
git-svn-id: svn://10.0.0.236/trunk@84756 18797224-902f-48f8-a5cc-f745e15eee43
2001-01-11 00:03:05 +00:00
beard%netscape.com
d9996c96bc Use GC-safe vector of JSFunction* to hold getters/setters.
git-svn-id: svn://10.0.0.236/trunk@84225 18797224-902f-48f8-a5cc-f745e15eee43
2000-12-30 07:46:18 +00:00
waldemar%netscape.com
26df8d7d3b Converted to CodeWarrior 6 and fixed errors
git-svn-id: svn://10.0.0.236/trunk@83751 18797224-902f-48f8-a5cc-f745e15eee43
2000-12-16 01:14:55 +00:00
rogerl%netscape.com
3192db65c0 Sweeping set of changes to implement closures. Also re-targetted entire
front-end to Cobol and back-end now generates pdp11 assembly code in
spanish.


git-svn-id: svn://10.0.0.236/trunk@83413 18797224-902f-48f8-a5cc-f745e15eee43
2000-12-08 23:55:39 +00:00
rogerl%netscape.com
ddf0366c42 Added notion of binding a 'this' to a method to construct a mini-closure
for call semantics. Fixed MSVC warnings from lexutils. Added BindThis
instructionand removed 'this' from Call instruction (is now extracted
from target argument).


git-svn-id: svn://10.0.0.236/trunk@82707 18797224-902f-48f8-a5cc-f745e15eee43
2000-11-16 23:48:42 +00:00
rogerl%netscape.com
d1aef56e6d Fixed adding setter to virtual inherited field.
git-svn-id: svn://10.0.0.236/trunk@82257 18797224-902f-48f8-a5cc-f745e15eee43
2000-11-03 02:42:01 +00:00
rogerl%netscape.com
289f607a92 Changed ArgumentList to ArgumentList*. Changed ICodeGenerator to take a
Context instead of world & global pair. Connected to ICodeAssembler from
XMLParser.


git-svn-id: svn://10.0.0.236/trunk@81552 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-21 00:30:23 +00:00
rogerl%netscape.com
0f281d3f25 Mods for getter/setter methods.
git-svn-id: svn://10.0.0.236/trunk@80752 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-09 22:21:26 +00:00
rogerl%netscape.com
7f0909298e Added getter/setter for names.
git-svn-id: svn://10.0.0.236/trunk@78782 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-11 22:10:44 +00:00
waldemar%netscape.com
e2aaf776e5 Fixed Mac errors and warnings
git-svn-id: svn://10.0.0.236/trunk@75439 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-02 23:09:29 +00:00
rogerl%netscape.com
f236eeaaff Removed all xxxCall, using simple call for everything.
Changed methods to use mMethods vector instead.
Various other fixes etc.


git-svn-id: svn://10.0.0.236/trunk@74388 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-18 20:53:03 +00:00
rogerl%netscape.com
07b641917e Support for 'constructor'.
git-svn-id: svn://10.0.0.236/trunk@73865 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-08 01:08:29 +00:00
rogerl%netscape.com
ceb54a7f92 Removed preprocess step, consolidated identifier handling.
git-svn-id: svn://10.0.0.236/trunk@73767 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-06 18:26:26 +00:00
beard%netscape.com
b669d93d26 unused parameter warning
git-svn-id: svn://10.0.0.236/trunk@73512 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-29 05:48:09 +00:00
beard%netscape.com
a0bbecd587 complementary operator delete(void*, JSClass*).
git-svn-id: svn://10.0.0.236/trunk@73511 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-29 05:46:36 +00:00
rogerl%netscape.com
0e43b9fadb Implicit this and class lookup stuff.
git-svn-id: svn://10.0.0.236/trunk@73493 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-29 01:21:41 +00:00
beard%netscape.com
487de01748 implemented JSClass::printProperties().
git-svn-id: svn://10.0.0.236/trunk@73431 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-28 19:46:13 +00:00
beard%netscape.com
98b2fcbf59 Fixed dynamic lookup of static slots. Added code to compare strings.
git-svn-id: svn://10.0.0.236/trunk@73413 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-28 16:32:52 +00:00
beard%netscape.com
05cbd424c7 Static slots.
git-svn-id: svn://10.0.0.236/trunk@73409 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-28 16:11:54 +00:00
beard%netscape.com
e1bf2e7c86 addSlot -> defineSlot, added defineStatic.
git-svn-id: svn://10.0.0.236/trunk@73282 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-27 03:42:42 +00:00
rogerl%netscape.com
0ab4d1b650 lots of stuff me and Patrick did
git-svn-id: svn://10.0.0.236/trunk@73275 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-27 02:39:32 +00:00
beard%netscape.com
0935fcf077 check for non-null superClass
git-svn-id: svn://10.0.0.236/trunk@73194 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-25 16:43:25 +00:00
beard%netscape.com
491725a122 hooked up superClass' scope as the prototype of a class's scope, to do method inheritance, removed bogus JSInstance::getSlotCount(), which overcounted slots.
git-svn-id: svn://10.0.0.236/trunk@73193 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-25 16:35:33 +00:00
beard%netscape.com
5e640f5cf7 JSInstance::getSlotCount() no longer recursive.
git-svn-id: svn://10.0.0.236/trunk@73176 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-24 22:42:15 +00:00
beard%netscape.com
7f094b555a Beginning support for superclass slots.
git-svn-id: svn://10.0.0.236/trunk@73175 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-24 22:07:00 +00:00
beard%netscape.com
032e7d113c Experiment with looking up methods in the prototype chain.
git-svn-id: svn://10.0.0.236/trunk@73165 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-24 05:22:23 +00:00
beard%netscape.com
e24d5dd777 Added JSClass::get/setConstructor().
git-svn-id: svn://10.0.0.236/trunk@73150 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-24 02:51:03 +00:00
rogerl%netscape.com
9d9a6a599f Got newClass working, added printProperties for instances, some slot
stuff is happening.


git-svn-id: svn://10.0.0.236/trunk@73133 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-24 00:50:59 +00:00
rogerl%netscape.com
071facaac6 Adding slot handling to code gen.
git-svn-id: svn://10.0.0.236/trunk@73116 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-23 23:43:24 +00:00
beard%netscape.com
324cafdec3 Added JSClass::hasSlot, getSlotCount(), and JSInstance.
git-svn-id: svn://10.0.0.236/trunk@73112 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-23 23:25:55 +00:00
rogerl%netscape.com
f0dcf103dd Removed FUNCTION instruction, other class related junk.
git-svn-id: svn://10.0.0.236/trunk@73106 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-23 22:53:09 +00:00
beard%netscape.com
62d8ad0434 A JSClass is a JSType now, and has a JSScope. Added addSlot, getSlot, getScope.
git-svn-id: svn://10.0.0.236/trunk@73039 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-23 05:09:37 +00:00
beard%netscape.com
36c74a5208 initial checkin, starting on a representation for JS2 classes.
git-svn-id: svn://10.0.0.236/trunk@72845 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-21 23:57:09 +00:00