-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Deprecation_and_Breaking_Changes.txt
65 lines (43 loc) · 2.74 KB
/
Deprecation_and_Breaking_Changes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
TeaScript Breaking Changes in the actual release
=================================================
Changes in CoreLibrary functionality
------------------------------------
_exit() now takes any type of argument, it will be the result value of the script.
A separated exit code is deprecated. A script will always have a result or NaV (Not A Value).
Script arguments are passed now as a Tuple "args" instead of "arg1", "arg2", ...
The legacy form is available in the TeaScript Host Application via --legacy-args
or when class Engine is used at compile time via define TEASCRIPT_ENGINE_USE_LEGACY_ARGS=1
Changes on C++ API level
------------------------------------
Member mParser in class Engine is now in mBuildTools shared pointer.
(was required for make 'opt-out header only' possible!)
Function and IntegerSequence are first class citizen now.
This must be taken into account for a visitor applied to ValueObject::Visit.
Visibility of Core Library functions
------------------------------------
The following Core Library functions moved up to Level CoreReduced:
The following Core Library functions moved up to Level Core:
The following Core Library functions moved up to Level Util:
The following Core Library functions moved up to Level Full:
TeaScript list of deprecated parts
=================================================
The following deprecated parts have been finally removed from this release:
Engine::ActivateDeprecatedDefaultMutableParameters()
Please, change your script code to explicit mutable parameters with 'def' keyword.
More deatails are available in the comment.
CoreLibrary::DoubleToLongLong()
This was the implementation for _f64toi64. In C++ just use a static_cast<long long>!
ArithmeticFactory::ApplyBinOp()|ApplyUnOp()
Please, use ArithmeticFactory::ApplyBinaryOp() and ArithmeticFactory::ApplyUnaryOp() instead.
Context::BulkAdd()
Please, use InjectVars() instead.
Context( VariableStorage const &init, TypeSystem && rMovedSys, bool const booting )
Please, uses a different constructor instead.
The following parts are now deprecated and will be removed in some future release:
CoreLibrary::ExitScript()
directly issued control flow exceptions are deprecated, use either _exit() or the new _Exit statement instead.
exit( exit_code )
use either _exit( Any ) or the new _Exit statement instead.
A separated exit code is deprecated. A script will always have a result or NaV (Not A Value).
class Engine HasExitCode()/GetExitCode() and mExitCode
A separated exit code is deprecated. A script will always have a result or NaV (Not A Value).