From a809d3763b516a8e4ec50cfc20fbafe5b3f844fe Mon Sep 17 00:00:00 2001 From: sussy layers dev <72522395+jwklong@users.noreply.github.com> Date: Sat, 18 Nov 2023 11:11:55 +0000 Subject: [PATCH] inline functions --- src/lib/Toolbox/Toolbox.xml | 2 ++ src/resources/blocks/functions.js | 22 ++++++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/src/lib/Toolbox/Toolbox.xml b/src/lib/Toolbox/Toolbox.xml index d1039b7..527d2d1 100644 --- a/src/lib/Toolbox/Toolbox.xml +++ b/src/lib/Toolbox/Toolbox.xml @@ -90,6 +90,8 @@ + + diff --git a/src/resources/blocks/functions.js b/src/resources/blocks/functions.js index f4dbf94..f7c8037 100644 --- a/src/resources/blocks/functions.js +++ b/src/resources/blocks/functions.js @@ -34,6 +34,28 @@ function register() { return `${code}\n`; }) + // inline function + registerBlock(`${categoryPrefix}inline`, { + message0: 'inline function %1 %2', + args0: [ + { + "type": "input_dummy" + }, + { + "type": "input_statement", + "name": "FUNC" + } + ], + output: null, + inputsInline: true, + colour: categoryColor, + }, (block) => { + const FUNC = javascriptGenerator.statementToCode(block, 'FUNC'); + + const code = `(() => { ${FUNC} })`; + return `${code}\n`; + }) + // return registerBlock(`${categoryPrefix}return`, { message0: 'return %1',