File tree Expand file tree Collapse file tree 1 file changed +17
-2
lines changed Expand file tree Collapse file tree 1 file changed +17
-2
lines changed Original file line number Diff line number Diff line change @@ -56,10 +56,25 @@ export default function generate(program) {
5656 };
5757 }
5858
59+ function getSlice(value, limit) {
60+ const list = []
61+ let index = 0;
62+ if (value.timestepRange.step > 0) {
63+ for (let i = value.timestepRange.start ; i <= limit && i <= value.timestepRange.end ; i += value.timestepRange.step ) {
64+ list.push(value.values[index++]);
65+ }
66+ } else {
67+ for (let i = value.timestepRange.start ; i >= limit && i >= value.timestepRange.end ; i += value.timestepRange.step ) {
68+ list.push(value.values[index++]);
69+ }
70+ }
71+ return list;
72+ }
73+
5974 function funktionPrint(value) {
6075 if (Array.isArray(value)) {
6176 console.log(value.join('\\n'));
62- }
77+ }
6378 else if (typeof value === "object") {
6479 console.log(value.values.join('\\n'));
6580 }
@@ -212,7 +227,7 @@ export default function generate(program) {
212227 } ,
213228
214229 TimeCall ( e ) {
215- return `${ gen ( e . id ) } .values.slice(0 , ${ gen ( e . timeValue ) } )` ;
230+ return `getSlice( ${ gen ( e . id ) } , ${ gen ( e . timeValue ) } )` ;
216231 } ,
217232
218233 InputStmt ( e ) {
You can’t perform that action at this time.
0 commit comments