Commit Graph

661 Commits

Author SHA1 Message Date
92d4bd5373 fixed wrong instructions generated for set-r and return variables.
class variables access fixed to use hcl->active_context->home->owner instead of hcl->active_context->owner
2022-02-19 16:57:06 +00:00
2195fc1d92 added the super keyword 2022-02-18 16:32:19 +00:00
8bc15dda67 simplified the class variable access by remembering the method owner class in context objects 2022-02-17 12:40:22 +00:00
9730c2abc0 meaningless interim commit 2022-02-14 01:21:01 +00:00
9230906786 added a class-side dictionary to the class object 2022-02-13 10:15:14 +00:00
fae6ea851b wrote some code to process class method definition 2022-02-13 02:39:37 +00:00
74f45acade adding class_cmstore and class_imstore. deleting class_mstore 2022-02-12 15:05:31 +00:00
fa28d8c74f some more code clean-up 2022-02-08 14:00:45 +00:00
6fc1bd9f3b some code clean-up 2022-02-08 13:57:48 +00:00
2431b1f6e8 fixed some type warnings 2022-02-08 12:01:57 +00:00
2bff114dd7 changed the object instantiation function to add up the instance variables counts of the superclass chain 2022-02-07 15:13:38 +00:00
82c05da5f0 implementing instance variable access with regards to inheritance 2022-02-06 16:06:48 +00:00
36204b16e8 removed an annoying comma in the syncode enumerator definition 2022-02-05 17:37:06 +00:00
52b445416d added a new identifier - self 2022-02-05 17:35:10 +00:00
06af73fa74 attempting to touch up the context object 2022-02-03 00:57:36 +00:00
62a071658d more code for message sending 2022-01-31 04:38:05 +00:00
abdfe202ac renamed class_set to class_mstore 2022-01-31 01:36:59 +00:00
db60287e63 adding the class_set instruction 2022-01-29 17:43:11 +00:00
9552c0403a writing message sending implementation code 2022-01-29 09:58:52 +00:00
3c2dd70b8b more code added for message sending implementation 2022-01-25 07:54:11 +00:00
32a1a397d5 some code for message sending 2022-01-24 15:39:49 +00:00
be17a646e7 fixed %js handling in the formatting funtion 2022-01-24 07:39:43 +00:00
4264bf8413 implementing message sending 2022-01-23 16:46:13 +00:00
53294f53a9 rearranged the stack for the call operation by pushing a dummy receiver.
the rearrangement is done to make aa plain function call look the same as a message send
2022-01-22 15:40:38 +00:00
7ec3aed047 implementing a message sending list 2022-01-14 16:09:52 +00:00
6c9a890f68 writing the compiler code for class variable handling 2022-01-09 16:47:38 +00:00
9369596f83 utf8 range limiting.
compiler work for class variable access in the class defintion scope
2022-01-08 09:26:54 +00:00
fb7ae0e3f9 rewriting variable collection in a class 2022-01-04 15:26:17 +00:00
12863d61e6 removed a debugging message 2022-01-04 13:43:51 +00:00
926ebb15c1 touching up variable declaration handling in a class 2022-01-03 17:59:55 +00:00
adac0b0b75 added new instructions - push_clsvar, store_into_clsvar, pop_into_clsvar 2022-01-01 14:58:57 +00:00
a495ef5003 fixed the missing prototype defintion of hcl_instantiate() 2021-12-31 08:39:12 +00:00
e5f8891e41 minor update of an error message 2021-12-31 06:31:57 +00:00
b930278e02 working on object instanttiation 2021-12-27 23:12:36 +00:00
faae358f06 fixed yet another bug compiling a catch block 2021-12-26 16:37:54 +00:00
6ee32b1c80 fixed another bug compiling a catch block 2021-12-26 16:00:08 +00:00
1cf340c8b2 fixed a wrong compiler check in the post_catch() phase 2021-12-26 14:59:34 +00:00
93ea3c46ea fixed process stack handling 2021-12-25 15:33:49 +00:00
3f5100460e enhanced try_exit and try_exit2 to restore the class stack pointer 2021-12-24 14:59:16 +00:00
e0c0e176d8 changed do_throw() to clear the class stack when the exception is empty 2021-12-24 05:10:50 +00:00
f4360afa34 added 'class_push_exit'
enhanced the compiler to produce 'pop_stacktop' at the end of the class if the class body is not empty
2021-12-24 00:05:58 +00:00
b66eb3c7f5 some lines of compiler code 2021-12-12 16:09:31 +00:00
1fc6d0868b a few lines of useless code 2021-12-11 15:57:06 +00:00
77f6939f31 some more code 2021-12-08 15:43:33 +00:00
f7d5599f2b adding more experimental code 2021-12-05 16:13:36 +00:00
33bea5418e adding Parse_Data record definition 2021-12-03 06:38:20 +00:00
1c90fff0dd more parser code 2021-12-01 17:06:30 +00:00
d2a966f19b more tokens in the lexer code 2021-11-28 17:00:17 +00:00
c59777405c removed unneded trailing spaces in comp.c 2021-11-26 15:17:09 +00:00
de0dfdeaf9 trying to implement object instantiation 2021-11-26 14:55:50 +00:00