Граф коммитов

589 Коммитов

Автор SHA1 Сообщение Дата
beard%netscape.com be1f23517c Added JSClass::get/setConstructor(). 2000-06-24 02:51:03 +00:00
beard%netscape.com 83ca8f326d Added call to constructor when executing NEW_CLASS. 2000-06-24 02:50:23 +00:00
beard%netscape.com cb43927903 Generating default constructor to run slot initializers. 2000-06-24 02:49:45 +00:00
beard%netscape.com db5e4eeed7 testCompile() is static 2000-06-24 01:04:58 +00:00
rogerl%netscape.com 1f65c8a44c typing 'this' 2000-06-24 01:02:34 +00:00
rogerl%netscape.com ac7b311416 Got newClass working, added printProperties for instances, some slot
stuff is happening.
2000-06-24 00:50:59 +00:00
beard%netscape.com 69d8a01263 added NEW_CLASS instruction, to instantiate classes. 2000-06-23 23:49:48 +00:00
beard%netscape.com 24a81ca7ca added NEW_CLASS instruction. 2000-06-23 23:49:17 +00:00
rogerl%netscape.com 3930dfffb9 Adding slot handling to code gen. 2000-06-23 23:43:24 +00:00
beard%netscape.com 2be0b299fc added NEW_CLASS instruction. 2000-06-23 23:41:27 +00:00
beard%netscape.com a313672e06 Added JSClass::hasSlot, getSlotCount(), and JSInstance. 2000-06-23 23:25:55 +00:00
beard%netscape.com 8132a040d4 JSValue::type now JSType* instead of const JSType*, all predefined JSType objects no longer const as well. 2000-06-23 23:25:14 +00:00
rogerl%netscape.com 9d4fb54c88 Removed FUNCTION instruction, other class related junk. 2000-06-23 22:53:09 +00:00
rginda%netscape.com b4077ed50c Added debugger opcode, change InstructionMap to a std::map, print source lines while tracing 2000-06-23 22:27:17 +00:00
rogerl%netscape.com a03db28a3b Add return statement if the function doesn't end with one 2000-06-23 21:20:03 +00:00
beard%netscape.com 0b87b860eb added assertion to ensure that mPC is always valid before fetching the next instruction. 2000-06-23 06:10:14 +00:00
beard%netscape.com 107dbc95b6 Additional JSClass processing: defining slots, generating methods. 2000-06-23 05:13:04 +00:00
beard%netscape.com ff711f4a8f When using a JSScope that has a parent scope, don't bother defining the standard properties, they will be shared. 2000-06-23 05:10:46 +00:00
beard%netscape.com 03ee321bef A JSClass is a JSType now, and has a JSScope. Added addSlot, getSlot, getScope. 2000-06-23 05:09:37 +00:00
beard%netscape.com e03ab761d7 remove unused file. 2000-06-23 04:10:04 +00:00
beard%netscape.com 585fef1917 putting the JSClass* in the current global scope, and looking up superclass rereferences. 2000-06-23 02:22:55 +00:00
rogerl%netscape.com 1a2c265dd0 Added support for 'debugger' as a statement. (Rob made me) 2000-06-23 00:08:10 +00:00
beard%netscape.com 0d1c72d6a6 JSClass support. 2000-06-21 23:58:17 +00:00
beard%netscape.com d193ec4ea0 initial checkin, starting on a representation for JS2 classes. 2000-06-21 23:57:09 +00:00
rogerl%netscape.com 3783f2c99e Work to support 'this'. 2000-06-21 22:32:21 +00:00
rogerl%netscape.com 0bb6f588ba Changed use of Register to TypedRegister throughout. 2000-06-20 22:45:45 +00:00
rogerl%netscape.com c23aa15cea Support for TypedRegister 2000-06-20 22:44:46 +00:00
rogerl%netscape.com a0ca8346b0 Added tests for scripts as strings. 2000-06-16 01:37:47 +00:00
rogerl%netscape.com 63047e7baf Mucking about with operator overlaoding plus initializing global context
- beginning type stuff.
2000-06-16 01:36:59 +00:00
rogerl%netscape.com c36f967be2 Fixed spelling. 2000-06-16 01:35:25 +00:00
rogerl%netscape.com 2e3359c741 Added op= support. 2000-06-15 16:03:54 +00:00
rogerl%netscape.com 22b93140d6 Mark top-level execution as 'script' rather than function - to handle
vars correctly.
2000-06-14 23:28:38 +00:00
rogerl%netscape.com f32f769135 Added 'Function' instruction, plus suppresses class output if there is
no super specified. (ok it's a hack, but it works)
2000-06-14 23:27:28 +00:00
rogerl%netscape.com dae9b1607b Adding support for Functions and Vars, preXcrement, object literals. 2000-06-14 23:26:15 +00:00
waldemar%netscape.com 2c96ad5323 Added parsing and printing of classes, interfaces, and namespaces 2000-06-02 04:35:44 +00:00
waldemar%netscape.com 7812dc9a8e Widened default line width to 30 2000-06-01 03:31:17 +00:00
waldemar%netscape.com 4fc6a829b4 Added function and constructor parsing and printing; fixed printing of blocks, compound statements, and :: 2000-06-01 03:30:58 +00:00
waldemar%netscape.com 17668e8a07 Added two-argument linearBreak 2000-06-01 03:30:19 +00:00
rogerl%netscape.com 6e0db88822 Removed old branches, changed offset printing to handle NULL operand. 2000-05-26 22:35:36 +00:00
rogerl%netscape.com 7535f22230 Update to new icg constructor etc. 2000-05-26 22:34:42 +00:00
rogerl%netscape.com a7d428fee6 Statement fun 2000-05-26 22:33:05 +00:00
waldemar%netscape.com fe2b190592 Added var, const, and for statements 2000-05-26 06:20:11 +00:00
waldemar%netscape.com e5a692e62d Fixed case/default indenting 2000-05-24 02:18:57 +00:00
rogerl%netscape.com bbd7ed8e62 Codegen for statements. Blew off old statement API and most of the test
functions for now, sorry.
2000-05-24 02:11:39 +00:00
waldemar%netscape.com 01a830b36d Turned on statement parsing and printing 2000-05-24 01:51:32 +00:00
waldemar%netscape.com ef0a0075ca Added statement parsing 2000-05-24 01:51:20 +00:00
waldemar%netscape.com 2d2b4d1e40 Added using std::fmod declaration 2000-05-24 00:55:23 +00:00
waldemar%netscape.com 758d1aa2a0 Fixed Mac warning 2000-05-24 00:54:56 +00:00
waldemar%netscape.com ffe032b94e Fixed Mac warnings 2000-05-24 00:54:40 +00:00
waldemar%netscape.com 0409172259 Fixed syntax errors: can't use qualified names in class definitions, and 'not' is a C++ reserved word 2000-05-24 00:54:28 +00:00
rginda%netscape.com 0fa9224054 apparently windows is too 2000-05-23 00:15:06 +00:00
rginda%netscape.com b8139b714f linux is so picky 2000-05-23 00:13:48 +00:00
rogerl%netscape.com bf553c65fb COMPARE_GT etc are gone. 2000-05-23 00:09:44 +00:00
rogerl%netscape.com 6c379c9539 Fall out from operator overloading. 2000-05-23 00:09:02 +00:00
rogerl%netscape.com 8bde6514f2 Added operator overloading support 2000-05-23 00:08:29 +00:00
rginda%netscape.com ab1f2aeef2 quieting linux warnings and fixing build bustage 2000-05-22 21:05:35 +00:00
rogerl%netscape.com 8b137399a7 Playing with operator overloading & Type types. 2000-05-19 17:41:10 +00:00
beard%netscape.com af00ce0353 fix const cast away linux breakage 2000-05-19 05:38:29 +00:00
rogerl%netscape.com c4b6a652d5 Bunch o' expression ops. 2000-05-18 00:04:15 +00:00
rogerl%netscape.com 4ec5cba5d9 Moved genExpr to ICodeGenerator - added most expression ops. 2000-05-18 00:03:23 +00:00
rogerl%netscape.com ad5c33b8e4 Moved genExpr to ICodeGenerator 2000-05-18 00:01:33 +00:00
beard%netscape.com 351bd72f09 ensuring both arguments to max are the same type 2000-05-16 22:23:15 +00:00
beard%netscape.com 0a0acdcf76 fix for linux bustage 2000-05-13 02:14:52 +00:00
waldemar%netscape.com 23816b0170 Simplified grammar without changing syntax 2000-05-13 00:18:56 +00:00
waldemar%netscape.com d3acc733e0 Fixed ?: parsing bug and pretty-printing offsets 2000-05-12 05:39:28 +00:00
waldemar%netscape.com b1a75a201a Fixed build flags 2000-05-12 05:16:08 +00:00
waldemar%netscape.com f2965154c2 Fixed parser errors 2000-05-12 05:15:52 +00:00
waldemar%netscape.com c8b3c01b71 Worked around Visual C++ problem 2000-05-12 05:15:17 +00:00
waldemar%netscape.com c17f899a83 Interchanged linearBreak and fillBreak 2000-05-12 03:43:35 +00:00
waldemar%netscape.com 3be5d6b79c Turned on expression parsing and printing 2000-05-12 03:26:43 +00:00
waldemar%netscape.com 80084c8eb5 Added expression parsing and printing code 2000-05-12 03:26:24 +00:00
waldemar%netscape.com 1f0d17398b Added RawArrayBuffer::reserve_advance_back 2000-05-12 03:25:49 +00:00
beard%netscape.com 34678ad655 removed unnecessary #include <iomanip> 2000-05-12 01:46:16 +00:00
beard%netscape.com d4060c6bef InterpretStage -> Context::Event. 2000-05-12 01:20:34 +00:00
beard%netscape.com e7503b10fb Fixed signed/unsigned warning. InterpretStage -> Context::Event. Context::removeListener now using find() from <algorithm>. 2000-05-12 01:19:39 +00:00
beard%netscape.com 171d878a64 InterpretStage -> Context::Event. Added typedefs for ListenerList and ListenerIterator. 2000-05-12 01:17:32 +00:00
beard%netscape.com 10e19444a4 turned off extra comma warnings. 2000-05-12 00:31:48 +00:00
rogerl%netscape.com 48f6891a39 post inc/dec 2000-05-11 00:35:43 +00:00
rogerl%netscape.com 33370b0248 Added post inc/dec for properties & names. 2000-05-11 00:35:06 +00:00
waldemar%netscape.com abe74d890c Added 'public' to the list of qualifiers 2000-05-09 20:55:09 +00:00
rogerl%netscape.com 908ce34c76 playing with gencode 2000-05-09 19:01:00 +00:00
beard%netscape.com a90cac7e92 Needed to transfer ownwership of iCode from ICodeGenerator to ICodeModule 2000-05-09 18:59:12 +00:00
beard%netscape.com 8b37e3f091 generalized gc_allocator copy constructor 2000-05-09 18:32:14 +00:00
beard%netscape.com 698cbbf51d removed JSFunction::operator delete 2000-05-09 18:31:43 +00:00
rogerl%netscape.com 737ea3d9ab Fixed leakage of ICodeModule via JSFunction 2000-05-09 18:09:33 +00:00
beard%netscape.com d991eb363d Need to modify string BEFORE caching iterators. 2000-05-09 06:39:39 +00:00
beard%netscape.com 1f06b15acc ensure that source buffer is always terminated by a uni::null (which isn't automatically true for basic_string<T>). 2000-05-09 06:31:54 +00:00
beard%netscape.com 6a4d27e9e3 map::find() works just fine on all platforms. 2000-05-09 05:55:30 +00:00
beard%netscape.com c5dcfed7a0 generating code rather than showing tokens, printing generic result rather than assuming it's a float64. 2000-05-09 05:46:26 +00:00
beard%netscape.com 2a42ae2d9b LoadString now has JSString* as second operand 2000-05-09 05:38:48 +00:00
beard%netscape.com 9acc5cacea Added JSString(const String&) and operator<<(Formatter&, const JSString&) 2000-05-09 05:37:58 +00:00
beard%netscape.com 69e170c16b LOAD_STRING now has String as second operand rather than String* 2000-05-09 05:18:16 +00:00
beard%netscape.com 052dad7118 VC6 bustage: can't initialize refs using construction form 2000-05-09 04:29:32 +00:00
beard%netscape.com 5e9296ee19 std::numeric_limits isn't working... 2000-05-09 04:26:44 +00:00
beard%netscape.com f8c91a8cf2 JSNativeFunction::mCode returns JSValue now to avoid leaking 2000-05-09 03:57:28 +00:00
beard%netscape.com c5e54d1f21 print now returns JSValue, added space between args when printing 2000-05-09 03:56:56 +00:00
beard%netscape.com 3c70fd5a83 CASE(string) 2000-05-09 03:56:08 +00:00
beard%netscape.com e3056982ab g++ basic_string annoyances 2000-05-09 03:55:43 +00:00
beard%netscape.com ec32a56539 needed deallocate(void*, size_type) on XP_UNIX for basic_string. 2000-05-09 03:46:03 +00:00
beard%netscape.com 5511c85685 Fixed leaks by changing JSValue::toString()/toNumber() to return JSValue rather than JSValue*. LOAD_STRING now creates a JSString from a String*. 2000-05-09 03:11:54 +00:00
beard%netscape.com 17bcf1f4d9 Added JSString for gc-able UNICODE strings, changed toString(), toNumber() to return JSValue rather than JSValue*. 2000-05-09 03:10:04 +00:00
beard%netscape.com 9e824b3492 make wchar_t an atomic type, for JSString. 2000-05-09 03:06:49 +00:00
waldemar%netscape.com b6ad6e0d78 Changed default constructor name from 'new' to the same name as its class 2000-05-09 00:10:50 +00:00
rogerl%netscape.com 9da7770958 testing native 'print' function 2000-05-08 23:12:10 +00:00
rogerl%netscape.com 70fd2e12cf Added more string handling + valueToString/Number code.
NativeFunction support.
2000-05-08 22:59:42 +00:00
waldemar%netscape.com 32a487e8ba Fixed syntax errors 2000-05-06 03:47:35 +00:00
waldemar%netscape.com 7ec407aaec Reordered includes to ensure that systemtypes.h is always included first; that's needed for Visual C++ 2000-05-06 03:47:13 +00:00
waldemar%netscape.com 45d64f11e9 Reordered files back to dependency order. Added gc_allocator.h. 2000-05-06 03:33:25 +00:00
waldemar%netscape.com f92842a971 Fixed syntax error 2000-05-06 03:31:50 +00:00
waldemar%netscape.com 9258b98a99 Added formatters, zones, and other miscellaneous utilities 2000-05-06 03:31:35 +00:00
waldemar%netscape.com 172513021f Fixed mac warning 2000-05-06 03:30:37 +00:00
rogerl%netscape.com 73705a8af1 Load_String 2000-05-05 23:23:13 +00:00
rogerl%netscape.com 25d9160b79 Basic string literal & value support 2000-05-05 23:22:31 +00:00
rogerl%netscape.com 0abfa73fd7 New arithmetic ops. 2000-05-05 21:38:16 +00:00
rogerl%netscape.com 05b4422677 Bunch more arithmetic ops etc.
Also fixed case munging when class name was only 2 letters long.
2000-05-05 21:36:36 +00:00
beard%netscape.com d1e0d062d0 Added debugger source 2000-05-05 18:20:05 +00:00
beard%netscape.com f346f8d86c No need to use string, now that size_t LineReader::readLine(String& wstr) exists. 2000-05-05 05:25:00 +00:00
beard%netscape.com 094e8c7500 added size_t LineReader::readLine(String& wstr) for convenience. 2000-05-05 05:24:02 +00:00
beard%netscape.com 15d927bcb1 regenerated dependencies 2000-05-05 04:58:56 +00:00
beard%netscape.com 6e4e5d59d1 LineReader returns at least '\n' 2000-05-05 04:50:45 +00:00
beard%netscape.com a95951573d stdin rather than cin 2000-05-05 04:45:39 +00:00
beard%netscape.com 7ff3a71924 Needed to use namespace Interpreter to see Context, using LineReader instead of istream. 2000-05-05 04:44:51 +00:00
beard%netscape.com f9843b94da remove unnecessary #include <iostream> 2000-05-05 04:44:01 +00:00
beard%netscape.com 1a0c42b62f Use FILE* instead of istream& for better line handling 2000-05-05 04:43:12 +00:00
beard%netscape.com 1210745bf0 EOF handling 2000-05-05 04:19:20 +00:00
beard%netscape.com d473e75f91 can't use std::getline() with a String on all platforms. 2000-05-05 04:10:01 +00:00
beard%netscape.com 34072e3ec7 forward declaring std::istream. 2000-05-05 04:08:59 +00:00
beard%netscape.com 6a814bf3a1 fixed ICodeGenerator/ICodeModule::print on Mac, which seems to be getting confused when using operator<< in another namespace. 2000-05-05 04:05:56 +00:00
beard%netscape.com 3bee0e64c4 removed unused macro NS_JSICG. 2000-05-05 04:04:23 +00:00
rginda%netscape.com ace8bcaf1e much debugger spankage; parse and execute step, continue, set, and print (kind-of) commands.
push implementation details of ICodeGenerator::print() into InstructionStream so they can be shared with ICodeModule.

copy variableList from ICodeGenerator to ICodeModule.

s/ScringAtom/const StringAtom/ in gencode.pl, regenerate vmtypes.h
2000-05-04 22:42:49 +00:00
rogerl%netscape.com f0a527348f Added const to the StringAtom usage.
Propagated variableList to ICodeModule
2000-05-04 22:08:38 +00:00
beard%netscape.com 638c7e68c2 fix assert bustage in DEBUG build. 2000-05-03 01:41:37 +00:00
rogerl%netscape.com c5ae7fcab1 Cleaning up some label stuff 2000-05-02 21:36:28 +00:00
beard%netscape.com e57aaf2941 warnings on Linux 2000-05-01 17:18:49 +00:00
beard%netscape.com d3a405ae82 fixing breakage on Linux 2000-05-01 17:18:23 +00:00
beard%netscape.com a38befc82a removed unnecessary casts to int32 in ICodeGenerator::setLabel() which were generating warnings. 2000-05-01 17:11:36 +00:00
waldemar%netscape.com 67d784459e Changed syntax of identifiers, attributes, expressions, functions, and packages. Added export, use, constructor, namespace, import. 2000-05-01 06:21:39 +00:00
beard%netscape.com b8c58d5968 made startsWith() static, to fix no prototype warning. 2000-04-30 14:56:31 +00:00
beard%netscape.com a7d1d8240d added debugger.cpp/h. 2000-04-30 14:55:51 +00:00
beard%netscape.com d1626bab75 Removed setGlobalObject(), as only the interpreter should be mucking with it after initial creation. Added getWorld(), made getICode() out of line, removed mICode since it's part of Activation record. 2000-04-29 14:44:42 +00:00
beard%netscape.com 99e50b3eb4 Implemented WITHIN, WITHOUT instructions, removed mICode from Context since it's part of Activation. No longer deleteing mActivation, just clearing it, since Activation objects are garbage collected. 2000-04-29 14:43:36 +00:00
beard%netscape.com a49b031e34 Added JSScope::getParent(). 2000-04-29 14:39:50 +00:00
beard%netscape.com 154414a0ee JSNamespace -> JSScope. 2000-04-29 14:14:28 +00:00
beard%netscape.com 5e49b8d13f JSValue::operator==(const JSValue&) 2000-04-29 14:13:43 +00:00
beard%netscape.com 1603cc24d3 Added JSValue::operator==(const JSValue&), renamed JSNamespace JSScope. 2000-04-29 14:13:08 +00:00
beard%netscape.com 275ac8e2bf moved kUndefinedValue to jstypes.cpp, where it belongs. 2000-04-29 14:11:27 +00:00
beard%netscape.com dce8602831 added WITHIN, WITHOUT instructions. 2000-04-29 14:10:53 +00:00
beard%netscape.com 28a0b3bb92 fixing windows bustage. 2000-04-29 00:29:56 +00:00
rginda%netscape.com c9f14ba1b4 somewhat weak debugger console hookup.
build shouldn't *look* different yet.

Moved Context::interpret() local vars into Context private, added accessors for
stuff, using JavaScript::Lexer to lex debugger commands.

Fixed sign comparison warning in icg.cpp
2000-04-29 00:23:06 +00:00
beard%netscape.com cd2ea3d3e4 Added jstypes.cpp 2000-04-28 23:10:06 +00:00