106 Commits

Author SHA1 Message Date
rogerl%netscape.com
d9a424fb09 Named arguments
git-svn-id: svn://10.0.0.236/trunk@78410 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-07 19:22:13 +00:00
rogerl%netscape.com
e73208321a Fix for empty function body
git-svn-id: svn://10.0.0.236/trunk@78228 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-06 02:16:51 +00:00
rogerl%netscape.com
f287b862db Optional and rest parameters.
Named arguments (just begun).


git-svn-id: svn://10.0.0.236/trunk@77963 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-02 01:01:04 +00:00
rogerl%netscape.com
cbac8d2364 Fixed printOperand to handle <NaR> properly. Added missing 'return this' to
all constructors.


git-svn-id: svn://10.0.0.236/trunk@76928 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-23 01:06:52 +00:00
rogerl%netscape.com
609feb88b0 Prototype munging for built-in global properties, implemented Function
object & Boolean object.


git-svn-id: svn://10.0.0.236/trunk@75594 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-04 20:28:35 +00:00
rogerl%netscape.com
65a4138aa9 Function prototype objects etc.
git-svn-id: svn://10.0.0.236/trunk@74792 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-26 01:56:47 +00:00
rogerl%netscape.com
27cfac201d More ECMA 3 mucking about to support constructors etc.
git-svn-id: svn://10.0.0.236/trunk@74774 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-25 22:58:04 +00:00
rogerl%netscape.com
fdde4baec8 Implementing Object.prototype object and global object for ECMA 3
Adding Math class support.


git-svn-id: svn://10.0.0.236/trunk@74572 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-21 01:16:49 +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
rginda%netscape.com
f05ffa274c removing bogus assert (per rogerl)
git-svn-id: svn://10.0.0.236/trunk@74278 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-15 00:01:25 +00:00
rogerl%netscape.com
b8f931c969 Fixed slots for non-function vars, plus bug in slot xcrement.
git-svn-id: svn://10.0.0.236/trunk@74265 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-14 22:23:20 +00:00
rogerl%netscape.com
d2493254c5 Type targetted binary operators.
Added 'time()' function as native.


git-svn-id: svn://10.0.0.236/trunk@74226 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-14 01:00:53 +00:00
beard%netscape.com
c9aa3f4e54 need <stdio.h> for fopen on the Mac.
git-svn-id: svn://10.0.0.236/trunk@74142 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-13 02:23:55 +00:00
rogerl%netscape.com
1fc062cb5a Switching to generic binary operator in order to distinguish situation
where Operators package had been loaded and be able to generate typed
versions of the binary operators otherwise.


git-svn-id: svn://10.0.0.236/trunk@74134 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-13 00:14:54 +00:00
rogerl%netscape.com
0fbe7a0bf0 Implemented Import -only it's not in the parser yet.
Added missing defineXXX functions.


git-svn-id: svn://10.0.0.236/trunk@74053 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-11 23:49:20 +00:00
rginda%netscape.com
f86893a190 cleaned up linux warnings, minor debugger tweaks
git-svn-id: svn://10.0.0.236/trunk@74039 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-11 23:08:03 +00:00
rogerl%netscape.com
11c82ac5b9 Some parts of x@<name> working.
git-svn-id: svn://10.0.0.236/trunk@73964 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-10 23:18:07 +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
57307567af Fix build bustage.
git-svn-id: svn://10.0.0.236/trunk@73530 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-29 18:40:58 +00:00
rogerl%netscape.com
a02f6ce0d8 use handleDot for call, too.
git-svn-id: svn://10.0.0.236/trunk@73525 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-29 18:30:47 +00:00
beard%netscape.com
ea7ae68414 delete property support.
git-svn-id: svn://10.0.0.236/trunk@73523 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-29 18:14:14 +00:00
beard%netscape.com
e88e8c2639 Fixing static dotted expressions.
git-svn-id: svn://10.0.0.236/trunk@73504 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-29 04:23:20 +00:00
beard%netscape.com
ca9ef8f4a5 fixed static calls.
git-svn-id: svn://10.0.0.236/trunk@73499 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-29 03:15:52 +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
rogerl%netscape.com
b1eb71fadb First set of unified 'dot' handling changes for statics.
git-svn-id: svn://10.0.0.236/trunk@73418 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-28 18:41:30 +00:00
beard%netscape.com
a031ccd333 GET_STATIC/SET_STATIC/STATIC_XCR now use an index rather than a name. Now using JSClass::hasStatic() rather than looking up statics in class' scope.
git-svn-id: svn://10.0.0.236/trunk@73411 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-28 16:14:18 +00:00
beard%netscape.com
b661c5b8ce Fixed unitialized static class members.
git-svn-id: svn://10.0.0.236/trunk@73283 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-27 03:43:40 +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
dcf06c37e9 Reset register usage after generating each initializer statement.
git-svn-id: svn://10.0.0.236/trunk@73225 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-26 15:19:45 +00:00
beard%netscape.com
1bb0ae2fc2 Conditionally set constructor, if it has any instructions.
git-svn-id: svn://10.0.0.236/trunk@73196 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-25 17:04:01 +00:00
beard%netscape.com
3fa84e139b When generating a reference to "this" use the current code generator's mClass when appropriate.
git-svn-id: svn://10.0.0.236/trunk@73163 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-24 05:21:03 +00:00
beard%netscape.com
eb882da672 Generating default constructor to run slot initializers.
git-svn-id: svn://10.0.0.236/trunk@73148 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-24 02:49:45 +00:00
rogerl%netscape.com
e8e7f3718b typing 'this'
git-svn-id: svn://10.0.0.236/trunk@73134 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-24 01:02:34 +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
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
rginda%netscape.com
0deba46ad9 Added debugger opcode, change InstructionMap to a std::map, print source lines while tracing
git-svn-id: svn://10.0.0.236/trunk@73101 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-23 22:27:17 +00:00
rogerl%netscape.com
60220bebd1 Add return statement if the function doesn't end with one
git-svn-id: svn://10.0.0.236/trunk@73092 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-23 21:20:03 +00:00
beard%netscape.com
c7d7e1af40 Additional JSClass processing: defining slots, generating methods.
git-svn-id: svn://10.0.0.236/trunk@73041 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-23 05:13:04 +00:00
beard%netscape.com
4fa1b03210 putting the JSClass* in the current global scope, and looking up superclass rereferences.
git-svn-id: svn://10.0.0.236/trunk@73015 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-23 02:22:55 +00:00
beard%netscape.com
b2ad6db1a4 JSClass support.
git-svn-id: svn://10.0.0.236/trunk@72846 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-21 23:58:17 +00:00
rogerl%netscape.com
c263fddb6c Work to support 'this'.
git-svn-id: svn://10.0.0.236/trunk@72823 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-21 22:32:21 +00:00
rogerl%netscape.com
ae69e1c56c Changed use of Register to TypedRegister throughout.
git-svn-id: svn://10.0.0.236/trunk@72685 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-20 22:45:45 +00:00
rogerl%netscape.com
5f2e9befeb Mucking about with operator overlaoding plus initializing global context
- beginning type stuff.


git-svn-id: svn://10.0.0.236/trunk@72337 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-16 01:36:59 +00:00
rogerl%netscape.com
f7ed7da244 Added op= support.
git-svn-id: svn://10.0.0.236/trunk@72314 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-15 16:03:54 +00:00
rogerl%netscape.com
27c8e7b5f6 Adding support for Functions and Vars, preXcrement, object literals.
git-svn-id: svn://10.0.0.236/trunk@72247 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-14 23:26:15 +00:00
rogerl%netscape.com
bbfb961ed9 Statement fun
git-svn-id: svn://10.0.0.236/trunk@70952 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-26 22:33:05 +00:00
rogerl%netscape.com
2cd8ea4b80 Codegen for statements. Blew off old statement API and most of the test
functions for now, sorry.


git-svn-id: svn://10.0.0.236/trunk@70700 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-24 02:11:39 +00:00
waldemar%netscape.com
7d8705ed17 Fixed syntax errors: can't use qualified names in class definitions, and 'not' is a C++ reserved word
git-svn-id: svn://10.0.0.236/trunk@70692 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-24 00:54:28 +00:00