Skip to content

Commit 7275873

Browse files
authored
Improved abstractor scripts
1 parent 276ff9b commit 7275873

File tree

2 files changed

+61
-2
lines changed

2 files changed

+61
-2
lines changed

cg/cgJava2UML.cstl

Lines changed: 60 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4181,6 +4181,7 @@ _* |-->false
41814181

41824182

41834183
statement::
4184+
; |-->
41844185
break ; |--> break
41854186
break _1 ; |--> break
41864187
continue ; |--> continue
@@ -4197,7 +4198,7 @@ _1 : _2 ; |-->_2
41974198
while _1 _2 |--> _1`preSideEffect while _1 do (_1`updateForm ; _2 ; _1`preSideEffect ) ; <when> _1 hasSideEffect
41984199
while _1 _2 |--> while _1 do _2 ;
41994200

4200-
4201+
if _1 _2 else _3 |--> if _1 then _2`noSemiStatement else _3 ; <when> _2 statement
42014202
if _1 _2 else _3 |--> if _1 then _2 else _3 ;
42024203

42034204
if _1 _2 |--> if _1 then _2 else skip ;
@@ -4227,14 +4228,71 @@ _1 ; |-->_1
42274228
_1 |-->_1
42284229

42294230

4231+
noSemiStatement::
4232+
; |-->
4233+
break ; |--> break
4234+
break _1 ; |--> break
4235+
continue ; |--> continue
4236+
continue _1 ; |--> continue
4237+
4238+
throw _1 ; |--> error _1
4239+
throw ; |--> error null
4240+
4241+
synchronized _1 _2 |-->_2
4242+
4243+
_1 : _2 |-->_2
4244+
_1 : _2 ; |-->_2
4245+
4246+
while _1 _2 |--> _1`preSideEffect while _1 do (_1`updateForm ; _2 ; _1`preSideEffect )<when> _1 hasSideEffect
4247+
while _1 _2 |--> while _1 do _2
4248+
4249+
4250+
if _1 _2 else _3 |--> if _1 then _2 else _3
4251+
4252+
if _1 _2 |--> if _1 then _2 else skip
4253+
4254+
for ( _1 ) _2 |--> _1 _2 _1`forIncrement )
4255+
4256+
switch _1 { _2 _* } |-->\n for _x : Integer.subrange(1,1) do\n ( var _switchval : _1`type ;\n _switchval := _1 ; \n_2\n_* )\n
4257+
switch _1 { _2 } |-->\n for _x : Integer.subrange(1,1) do\n ( var _switchval : _1`type ;\n _switchval := _1 ; \n_2\n )\n
4258+
4259+
return _1 ; |--> return _1
4260+
return ; |--> return
4261+
4262+
assert _1 : _2 ; |--> assert _1 do _2
4263+
assert _1 ; |--> assert _1
4264+
4265+
try _1 _2 _* |--> try (_1 _2) _* <when> _1 resourceSpecification
4266+
try _1 _2 |--> try (_1 _2) <when> _1 resourceSpecification
4267+
try _1 _2 _* |--> try _1 _2 _*
4268+
try _1 _2 |--> try _1 _2
4269+
4270+
do _1 while _2 ; |--> while true do (_1 ;\n if _2 then\n _2`updateForm else break)<when> _2 hasSideEffect
4271+
4272+
do _1 while _2 ; |--> while true do (_1 ;\n if _2 then skip else break)
4273+
4274+
_1 ; |-->_1`updateForm<when> _1 expression
4275+
_1 ; |-->_1
4276+
_1 |-->_1`noSemiStatement<when> _1 statement
4277+
_1 |-->_1
4278+
4279+
42304280
blockStatement::
42314281
_1 ; |-->_1 ;\n
42324282
_1 |-->_1 \n
42334283

42344284

42354285
block::
4236-
{ _1 _* } |-->( _1 _* )
4286+
{ _1 } |-->( _1`noSemiStatement )<when> _1 blockStatement
42374287
{ _1 } |-->( _1 )
4288+
{ _1 _2 } |-->( _1 _2`noSemiStatement )<when> _2 blockStatement
4289+
{ _1 _2 } |-->( _1 _2 )
4290+
{ _1 _2 _3 } |-->( _1 _2 _3`noSemiStatement )<when> _3 blockStatement
4291+
{ _1 _2 _3 } |-->( _1 _2 _3 )
4292+
{ _1 _2 _3 _4 } |-->( _1 _2 _3 _4`noSemiStatement )<when> _4 blockStatement
4293+
{ _1 _2 _3 _4 } |-->( _1 _2 _3 _4 )
4294+
4295+
{ _1 _* } |-->( _1 _* )
42384296
{ } |-->skip
42394297

42404298
_1 |-->_1

cg/python2UML.cstl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1044,6 +1044,7 @@ numpyTrailer::
10441044
. linspace _1 |-->MathLib.numericSeries(_1`firstArg, _1`secondArg, 50)<when> _1`argCount 3
10451045
. linspace _1 |-->MathLib.numericSeries(_1`firstArg, _1`secondArg, _1`thirdArg->oclAsType(int))<when> _1`argCount 5
10461046

1047+
. matmul _1 |-->MatrixLib.matrixMultiplication(_1`firstArg,_1`secondArg)
10471048
. prod _1 |-->MatrixLib.prdMatrix(_1`firstArg)
10481049
. sum _1 |-->MatrixLib.sumMatrix(_1`firstArg)
10491050

0 commit comments

Comments
 (0)