Commit Graph

634 Commits

Author SHA1 Message Date
Rafal Kupiec 0278f0a630
Add callback cast operator.
The build has failed. Details
2018-12-13 09:31:32 +01:00
Rafal Kupiec d87ce3ad1d
1. Set a proper data type when compiling closure.
The build was successful. Details
2. Temporarily allow to call a closure/function if its name is stored in a variable of callback or string type. Ultimately, only callback will be allowed.
2018-12-01 12:53:58 +01:00
Rafal Kupiec 2572b9321d
This is already fixed.
The build was successful. Details
2018-11-29 13:10:00 +01:00
Rafal Kupiec 3f9e3b0664
Check for compatible data types on OP_CALL & OP_STORE.
The build was successful. Details
2018-11-28 21:58:41 +01:00
Rafal Kupiec 9ab896c2e2
Implement PH7_CheckVarCompat().
The build was successful. Details
2018-11-28 20:37:07 +01:00
Rafal Kupiec f3f1723104
Return valid function for conversion to char.
The build was successful. Details
2018-11-28 20:11:47 +01:00
Rafal Kupiec 0d3cb90d5f
Always convert integer value to char as it is done in C/C++.
The build was successful. Details
2018-11-28 20:10:14 +01:00
Rafal Kupiec a5ef118263
More bugs to fix in this branch.
The build was successful. Details
2018-11-28 14:09:21 +01:00
Rafal Kupiec d3e0ffe4bf
Update TODO list.
The build was successful. Details
2018-11-28 14:01:55 +01:00
Rafal Kupiec 3cc8cfe6a2
Remove duplicated code.
The build was successful. Details
2018-11-28 13:58:33 +01:00
Rafal Kupiec 1cebd3af37
Allow char to be typecasted to value of any other type.
The build was successful. Details
2018-11-26 20:41:15 +01:00
Rafal Kupiec 5dde778382
Release object to free some memory.
The build was successful. Details
2018-11-26 20:39:08 +01:00
Rafal Kupiec d65a529d21
Initial support for char data type.
The build was successful. Details
2018-11-26 20:37:51 +01:00
Rafal Kupiec 8782b9c25b
Update tests to use more strict data types instead of mixed.
The build was successful. Details
2018-11-26 14:41:41 +01:00
Rafal Kupiec 174ecb2a38
Initial support for void type.
The build was successful. Details
2018-11-23 09:19:37 +01:00
Rafal Kupiec 87db6d6dfd
Allow a method/closure to take compatible mixed variable as argument.
The build was successful. Details
2018-11-18 22:06:40 +01:00
Rafal Kupiec 5878a171e6
Update TODO list
The build was successful. Details
2018-11-13 20:26:22 +01:00
Rafal Kupiec e727453ccf
Fix var_dump() for mixed arrays.
The build was successful. Details
2018-11-13 20:24:55 +01:00
Rafal Kupiec 7a34716298
Add TODO list.
The build was successful. Details
2018-11-07 19:53:15 +01:00
Rafal Kupiec 8724cebf71
Do not actually support references in the same scope.
The build was successful. Details
2018-10-28 19:45:31 +01:00
Rafal Kupiec ec47190874
Array dump format.
The build was successful. Details
2018-10-27 19:56:13 +02:00
Rafal Kupiec e5fb7d625e
Allow only a colon as variable separator.
The build was successful. Details
2018-10-27 19:49:24 +02:00
Rafal Kupiec 6f13c347d8
Set the proper type of array.
The build was successful. Details
2018-10-26 19:45:10 +02:00
Rafal Kupiec 03cf969c31
Check for a type of array.
The build was successful. Details
2018-10-11 15:15:48 +02:00
Rafal Kupiec b66515516e
First check if array or object.
The build was successful. Details
2018-10-01 22:46:35 +02:00
Rafal Kupiec 6293b8f5bf
Do not try to dump empty array.
The build was successful. Details
2018-10-01 22:43:23 +02:00
Rafal Kupiec c00080e190
Correct comment.
The build was successful. Details
2018-09-24 19:20:23 +02:00
Rafal Kupiec b5eb268ce1
Do not allow to set a value of different type to the variable.
The build was successful. Details
2018-09-24 19:17:46 +02:00
Rafal Kupiec 5f2f9d9c08
Set proper data type for static variables;
The build was successful. Details
2018-09-24 19:16:44 +02:00
Rafal Kupiec 6e7bc74949
Put comment in right place.
The build was successful. Details
2018-09-24 13:39:50 +02:00
Rafal Kupiec f26095658d
Treat empty object as false.
The build was successful. Details
2018-09-24 13:38:33 +02:00
Rafal Kupiec 2db1954779
Another bunch of fixes for object type.
The build was successful. Details
2018-09-24 13:34:22 +02:00
Rafal Kupiec 550107235c
Do not try to dump a non-instantiated object.
The build was successful. Details
2018-09-24 12:22:58 +02:00
Rafal Kupiec 369cadfcda
Tryeing to call a non-instantiated object should result in an error.
The build was successful. Details
2018-09-24 12:10:19 +02:00
Rafal Kupiec f72d6c3922
Load data from array/object only if there is anything stored.
The build was successful. Details
2018-09-24 11:47:30 +02:00
Rafal Kupiec 59fda6d797
Unref hashmap and object only if there is any data stored.
The build was successful. Details
2018-09-24 11:29:51 +02:00
Rafal Kupiec ba0c250911
Fix test.
The build was successful. Details
2018-09-23 19:07:03 +02:00
Rafal Kupiec 08296110fb
Temporarily fix tests.
The build was successful. Details
2018-09-23 17:51:47 +02:00
Rafal Kupiec dd774be005
Fix for() loop, do not use iP1 for OP_LOAD.
The build has failed. Details
2018-09-23 17:51:09 +02:00
Rafal Kupiec ae0fde152c
Create a variable only on OP_LOAD.
The build has failed. Details
2018-09-23 17:40:26 +02:00
Rafal Kupiec 28a5fa59ad
Duplicate variable name. Fix variable declaration.
The build was successful. Details
2018-09-22 17:54:59 +02:00
Rafal Kupiec 514e07c7f3
Fix static variables not containing any value.
The build was successful. Details
2018-09-21 22:18:11 +02:00
Rafal Kupiec f927667d85
Strictly check for data type of static variable declaration.
The build has failed. Details
2018-09-21 22:06:36 +02:00
Rafal Kupiec 79e4bac7eb
Remove no longer used PH7_CompileStatic().
The build was successful. Details
2018-09-21 00:22:29 +02:00
Rafal Kupiec bd4d146d0a
Initial version of variable definition.
The build was successful. Details
2018-09-21 00:21:15 +02:00
Rafal Kupiec 241c7d8168
First step to declare a variable with specified data type.
The build was successful. Details
2018-09-20 17:06:23 +02:00
Rafal Kupiec e6e59d299e
Fix method parameters.
The build was successful. Details
2018-09-19 19:27:50 +02:00
Rafal Kupiec 9884f8288b
Do not allow typecasting to unset a variable.
The build was successful. Details
2018-09-18 22:11:57 +02:00
Rafal Kupiec 5a6af65cfa
Object of wrong type passed as argument should be generate error.
The build was successful. Details
2018-09-17 22:06:53 +02:00
Rafal Kupiec 82998ffd0f
Silently typecast integer value to float.
The build was successful. Details
This is a necessary step, to allow passing integer numbers. Otherwise, every float variable would need a floating point value. In other words, "float $x = 5" is allowed construct. Without this simple change, only accepted
construction was "float $x = 5.0".
2018-09-16 20:02:34 +02:00