Skip to content

Commit 35bd38c

Browse files
committed
- add C3 superclass linerization in inheritance
1 parent c8b6191 commit 35bd38c

File tree

11 files changed

+626
-431
lines changed

11 files changed

+626
-431
lines changed

build/runtime.json

Lines changed: 80 additions & 80 deletions
Large diffs are not rendered by default.

build/system-runtime.js

Lines changed: 166 additions & 101 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/system-runtime.min.js

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/system/system.js

Lines changed: 80 additions & 80 deletions
Large diffs are not rendered by default.

doc/classes/runtime-metamodel.html

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ <h2 class="off-left">Methods</h2>
158158
<div class="meta">
159159
<p>
160160
Defined in
161-
<a href="../files/src_metamodel.js.html#l1804"><code>src&#x2F;metamodel.js:1804</code></a>
161+
<a href="../files/src_metamodel.js.html#l1869"><code>src&#x2F;metamodel.js:1869</code></a>
162162
</p>
163163

164164

@@ -186,7 +186,7 @@ <h2 class="off-left">Methods</h2>
186186
<div class="meta">
187187
<p>
188188
Defined in
189-
<a href="../files/src_metamodel.js.html#l1835"><code>src&#x2F;metamodel.js:1835</code></a>
189+
<a href="../files/src_metamodel.js.html#l1900"><code>src&#x2F;metamodel.js:1900</code></a>
190190
</p>
191191

192192

@@ -217,7 +217,7 @@ <h2 class="off-left">Methods</h2>
217217
<div class="meta">
218218
<p>
219219
Defined in
220-
<a href="../files/src_metamodel.js.html#l1860"><code>src&#x2F;metamodel.js:1860</code></a>
220+
<a href="../files/src_metamodel.js.html#l1925"><code>src&#x2F;metamodel.js:1925</code></a>
221221
</p>
222222

223223

@@ -263,7 +263,7 @@ <h4>Returns:</h4>
263263
<div class="meta">
264264
<p>
265265
Defined in
266-
<a href="../files/src_metamodel.js.html#l1851"><code>src&#x2F;metamodel.js:1851</code></a>
266+
<a href="../files/src_metamodel.js.html#l1916"><code>src&#x2F;metamodel.js:1916</code></a>
267267
</p>
268268

269269

@@ -324,7 +324,7 @@ <h4>Returns:</h4>
324324
<div class="meta">
325325
<p>
326326
Defined in
327-
<a href="../files/src_metamodel.js.html#l1868"><code>src&#x2F;metamodel.js:1868</code></a>
327+
<a href="../files/src_metamodel.js.html#l1933"><code>src&#x2F;metamodel.js:1933</code></a>
328328
</p>
329329

330330

@@ -385,7 +385,7 @@ <h4>Returns:</h4>
385385
<div class="meta">
386386
<p>
387387
Defined in
388-
<a href="../files/src_metamodel.js.html#l1842"><code>src&#x2F;metamodel.js:1842</code></a>
388+
<a href="../files/src_metamodel.js.html#l1907"><code>src&#x2F;metamodel.js:1907</code></a>
389389
</p>
390390

391391

@@ -449,7 +449,7 @@ <h4>Returns:</h4>
449449
<div class="meta">
450450
<p>
451451
Defined in
452-
<a href="../files/src_metamodel.js.html#l1877"><code>src&#x2F;metamodel.js:1877</code></a>
452+
<a href="../files/src_metamodel.js.html#l1942"><code>src&#x2F;metamodel.js:1942</code></a>
453453
</p>
454454

455455

@@ -510,7 +510,7 @@ <h4>Returns:</h4>
510510
<div class="meta">
511511
<p>
512512
Defined in
513-
<a href="../files/src_metamodel.js.html#l1797"><code>src&#x2F;metamodel.js:1797</code></a>
513+
<a href="../files/src_metamodel.js.html#l1862"><code>src&#x2F;metamodel.js:1862</code></a>
514514
</p>
515515

516516

@@ -550,7 +550,7 @@ <h4>Returns:</h4>
550550
<div class="meta">
551551
<p>
552552
Defined in
553-
<a href="../files/src_metamodel.js.html#l1970"><code>src&#x2F;metamodel.js:1970</code></a>
553+
<a href="../files/src_metamodel.js.html#l2035"><code>src&#x2F;metamodel.js:2035</code></a>
554554
</p>
555555

556556

@@ -623,7 +623,7 @@ <h4>Returns:</h4>
623623
<div class="meta">
624624
<p>
625625
Defined in
626-
<a href="../files/src_metamodel.js.html#l1940"><code>src&#x2F;metamodel.js:1940</code></a>
626+
<a href="../files/src_metamodel.js.html#l2005"><code>src&#x2F;metamodel.js:2005</code></a>
627627
</p>
628628

629629

@@ -696,7 +696,7 @@ <h4>Returns:</h4>
696696
<div class="meta">
697697
<p>
698698
Defined in
699-
<a href="../files/src_metamodel.js.html#l1960"><code>src&#x2F;metamodel.js:1960</code></a>
699+
<a href="../files/src_metamodel.js.html#l2025"><code>src&#x2F;metamodel.js:2025</code></a>
700700
</p>
701701

702702

@@ -769,7 +769,7 @@ <h4>Returns:</h4>
769769
<div class="meta">
770770
<p>
771771
Defined in
772-
<a href="../files/src_metamodel.js.html#l1980"><code>src&#x2F;metamodel.js:1980</code></a>
772+
<a href="../files/src_metamodel.js.html#l2045"><code>src&#x2F;metamodel.js:2045</code></a>
773773
</p>
774774

775775

@@ -842,7 +842,7 @@ <h4>Returns:</h4>
842842
<div class="meta">
843843
<p>
844844
Defined in
845-
<a href="../files/src_metamodel.js.html#l1950"><code>src&#x2F;metamodel.js:1950</code></a>
845+
<a href="../files/src_metamodel.js.html#l2015"><code>src&#x2F;metamodel.js:2015</code></a>
846846
</p>
847847

848848

@@ -915,7 +915,7 @@ <h4>Returns:</h4>
915915
<div class="meta">
916916
<p>
917917
Defined in
918-
<a href="../files/src_metamodel.js.html#l1920"><code>src&#x2F;metamodel.js:1920</code></a>
918+
<a href="../files/src_metamodel.js.html#l1985"><code>src&#x2F;metamodel.js:1985</code></a>
919919
</p>
920920

921921

@@ -994,7 +994,7 @@ <h4>Returns:</h4>
994994
<div class="meta">
995995
<p>
996996
Defined in
997-
<a href="../files/src_metamodel.js.html#l1887"><code>src&#x2F;metamodel.js:1887</code></a>
997+
<a href="../files/src_metamodel.js.html#l1952"><code>src&#x2F;metamodel.js:1952</code></a>
998998
</p>
999999

10001000

@@ -1087,7 +1087,7 @@ <h4>Returns:</h4>
10871087
<div class="meta">
10881088
<p>
10891089
Defined in
1090-
<a href="../files/src_metamodel.js.html#l1930"><code>src&#x2F;metamodel.js:1930</code></a>
1090+
<a href="../files/src_metamodel.js.html#l1995"><code>src&#x2F;metamodel.js:1995</code></a>
10911091
</p>
10921092

10931093

@@ -1160,7 +1160,7 @@ <h4>Returns:</h4>
11601160
<div class="meta">
11611161
<p>
11621162
Defined in
1163-
<a href="../files/src_metamodel.js.html#l1910"><code>src&#x2F;metamodel.js:1910</code></a>
1163+
<a href="../files/src_metamodel.js.html#l1975"><code>src&#x2F;metamodel.js:1975</code></a>
11641164
</p>
11651165

11661166

@@ -1227,7 +1227,7 @@ <h4>Returns:</h4>
12271227
<div class="meta">
12281228
<p>
12291229
Defined in
1230-
<a href="../files/src_metamodel.js.html#l1819"><code>src&#x2F;metamodel.js:1819</code></a>
1230+
<a href="../files/src_metamodel.js.html#l1884"><code>src&#x2F;metamodel.js:1884</code></a>
12311231
</p>
12321232

12331233

@@ -1279,7 +1279,7 @@ <h4>Parameters:</h4>
12791279
<div class="meta">
12801280
<p>
12811281
Defined in
1282-
<a href="../files/src_metamodel.js.html#l1901"><code>src&#x2F;metamodel.js:1901</code></a>
1282+
<a href="../files/src_metamodel.js.html#l1966"><code>src&#x2F;metamodel.js:1966</code></a>
12831283
</p>
12841284

12851285

@@ -1337,7 +1337,7 @@ <h4>Parameters:</h4>
13371337
<div class="meta">
13381338
<p>
13391339
Defined in
1340-
<a href="../files/src_metamodel.js.html#l1811"><code>src&#x2F;metamodel.js:1811</code></a>
1340+
<a href="../files/src_metamodel.js.html#l1876"><code>src&#x2F;metamodel.js:1876</code></a>
13411341
</p>
13421342

13431343

@@ -1386,7 +1386,7 @@ <h4>Parameters:</h4>
13861386
<div class="meta">
13871387
<p>
13881388
Defined in
1389-
<a href="../files/src_metamodel.js.html#l1827"><code>src&#x2F;metamodel.js:1827</code></a>
1389+
<a href="../files/src_metamodel.js.html#l1892"><code>src&#x2F;metamodel.js:1892</code></a>
13901390
</p>
13911391

13921392

doc/data.json

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -287,7 +287,7 @@
287287
"module": "runtime",
288288
"namespace": "",
289289
"file": "src/metamodel.js",
290-
"line": 1782,
290+
"line": 1847,
291291
"description": "This module manages Runtime metamodel. <br>\nRuntime metamodel loads schemas and types, analyzes them and creates the component classes and related RuntimeDatabaseCollections.",
292292
"requires": [
293293
"runtime-db",
@@ -499,7 +499,7 @@
499499
"submodule": "runtime-metamodel",
500500
"namespace": "",
501501
"file": "src/metamodel.js",
502-
"line": 1782,
502+
"line": 1847,
503503
"description": "This module manages Runtime metamodel. <br>\nRuntime metamodel loads schemas and types, analyzes them and creates the component classes and related RuntimeDatabaseCollections.",
504504
"requires": [
505505
"runtime-db",
@@ -1953,7 +1953,7 @@
19531953
},
19541954
{
19551955
"file": "src/metamodel.js",
1956-
"line": 1797,
1956+
"line": 1862,
19571957
"description": "Init the metamodel.",
19581958
"itemtype": "method",
19591959
"name": "init",
@@ -1963,7 +1963,7 @@
19631963
},
19641964
{
19651965
"file": "src/metamodel.js",
1966-
"line": 1804,
1966+
"line": 1869,
19671967
"description": "Remove the data of the metamodel from the memory.",
19681968
"itemtype": "method",
19691969
"name": "clear",
@@ -1973,7 +1973,7 @@
19731973
},
19741974
{
19751975
"file": "src/metamodel.js",
1976-
"line": 1811,
1976+
"line": 1876,
19771977
"description": "Add a new schema.",
19781978
"itemtype": "method",
19791979
"name": "schema",
@@ -1990,7 +1990,7 @@
19901990
},
19911991
{
19921992
"file": "src/metamodel.js",
1993-
"line": 1819,
1993+
"line": 1884,
19941994
"description": "Add a new model.",
19951995
"itemtype": "method",
19961996
"name": "model",
@@ -2007,7 +2007,7 @@
20072007
},
20082008
{
20092009
"file": "src/metamodel.js",
2010-
"line": 1827,
2010+
"line": 1892,
20112011
"description": "Add a new type.",
20122012
"itemtype": "method",
20132013
"name": "type",
@@ -2024,7 +2024,7 @@
20242024
},
20252025
{
20262026
"file": "src/metamodel.js",
2027-
"line": 1835,
2027+
"line": 1900,
20282028
"description": "Create the metamodel.",
20292029
"itemtype": "method",
20302030
"name": "create",
@@ -2034,7 +2034,7 @@
20342034
},
20352035
{
20362036
"file": "src/metamodel.js",
2037-
"line": 1842,
2037+
"line": 1907,
20382038
"description": "Get a schema.",
20392039
"itemtype": "method",
20402040
"name": "getSchema",
@@ -2055,7 +2055,7 @@
20552055
},
20562056
{
20572057
"file": "src/metamodel.js",
2058-
"line": 1851,
2058+
"line": 1916,
20592059
"description": "Get a model.",
20602060
"itemtype": "method",
20612061
"name": "getModel",
@@ -2076,7 +2076,7 @@
20762076
},
20772077
{
20782078
"file": "src/metamodel.js",
2079-
"line": 1860,
2079+
"line": 1925,
20802080
"description": "Get the definition of the metamodel.",
20812081
"itemtype": "method",
20822082
"name": "getMetaDef",
@@ -2090,7 +2090,7 @@
20902090
},
20912091
{
20922092
"file": "src/metamodel.js",
2093-
"line": 1868,
2093+
"line": 1933,
20942094
"description": "Get parents of a shema if any.",
20952095
"itemtype": "method",
20962096
"name": "getParents",
@@ -2111,7 +2111,7 @@
21112111
},
21122112
{
21132113
"file": "src/metamodel.js",
2114-
"line": 1877,
2114+
"line": 1942,
21152115
"description": "Check if a class inherits from another one",
21162116
"itemtype": "method",
21172117
"name": "inheritFrom",
@@ -2137,7 +2137,7 @@
21372137
},
21382138
{
21392139
"file": "src/metamodel.js",
2140-
"line": 1887,
2140+
"line": 1952,
21412141
"description": "Check if the object is compliant with the schema.\nUse it to test if the constructor of an object is compliant\nwith the definition of the class.",
21422142
"itemtype": "method",
21432143
"name": "isValidObject",
@@ -2173,7 +2173,7 @@
21732173
},
21742174
{
21752175
"file": "src/metamodel.js",
2176-
"line": 1901,
2176+
"line": 1966,
21772177
"description": "Prepare the object in order to be compliant with the schema.",
21782178
"itemtype": "method",
21792179
"name": "prepareObject",
@@ -2195,7 +2195,7 @@
21952195
},
21962196
{
21972197
"file": "src/metamodel.js",
2198-
"line": 1910,
2198+
"line": 1975,
21992199
"description": "Check if a value is compliant with a type.",
22002200
"itemtype": "method",
22012201
"name": "isValidType",
@@ -2221,7 +2221,7 @@
22212221
},
22222222
{
22232223
"file": "src/metamodel.js",
2224-
"line": 1920,
2224+
"line": 1985,
22252225
"description": "Check if a value is compliant with a type enum.",
22262226
"itemtype": "method",
22272227
"name": "isValidEnum",
@@ -2247,7 +2247,7 @@
22472247
},
22482248
{
22492249
"file": "src/metamodel.js",
2250-
"line": 1930,
2250+
"line": 1995,
22512251
"description": "Check if the name is a correct state for the component.",
22522252
"itemtype": "method",
22532253
"name": "isValidState",
@@ -2273,7 +2273,7 @@
22732273
},
22742274
{
22752275
"file": "src/metamodel.js",
2276-
"line": 1940,
2276+
"line": 2005,
22772277
"description": "Check if an attribute of the schema is an event.",
22782278
"itemtype": "method",
22792279
"name": "isEvent",
@@ -2299,7 +2299,7 @@
22992299
},
23002300
{
23012301
"file": "src/metamodel.js",
2302-
"line": 1950,
2302+
"line": 2015,
23032303
"description": "Check if an attribute of the schema is a property.",
23042304
"itemtype": "method",
23052305
"name": "isProperty",
@@ -2325,7 +2325,7 @@
23252325
},
23262326
{
23272327
"file": "src/metamodel.js",
2328-
"line": 1960,
2328+
"line": 2025,
23292329
"description": "Check if an attribute of the schema is a link.",
23302330
"itemtype": "method",
23312331
"name": "isLink",
@@ -2351,7 +2351,7 @@
23512351
},
23522352
{
23532353
"file": "src/metamodel.js",
2354-
"line": 1970,
2354+
"line": 2035,
23552355
"description": "Check if an attribute of the schema is a collection.",
23562356
"itemtype": "method",
23572357
"name": "isCollection",
@@ -2377,7 +2377,7 @@
23772377
},
23782378
{
23792379
"file": "src/metamodel.js",
2380-
"line": 1980,
2380+
"line": 2045,
23812381
"description": "Check if an attribute of the schema is a method.",
23822382
"itemtype": "method",
23832383
"name": "isMethod",

0 commit comments

Comments
 (0)