mirror of
https://github.com/johndoe6345789/metabuilder.git
synced 2026-04-25 06:14:59 +00:00
feat: Propagate workflow plugins to Go, Rust, C++, and Mojo
Multi-language workflow plugin system following Python's structure: - Each plugin in its own directory with implementation + package.json - Category-level package.json manifests listing all plugins - Consistent interface: run(runtime, inputs) -> outputs Languages added: - Go: math, string, logic, list, dict, var, convert (25+ plugins) - Rust: math, string, logic, list, convert, var (50+ functions) - C++: header-only math, string, logic, var, convert (30+ plugins) - Mojo: math, string, list with systems programming features Python structure fixed: - Reorganized flat files into plugin subdirectories - Added package.json metadata to all 120+ plugins - Added missing backend category (15 plugins) - Category manifests with plugin lists Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
13
workflow/plugins/cpp/string/string_concat/package.json
Normal file
13
workflow/plugins/cpp/string/string_concat/package.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"name": "@metabuilder/string_concat",
|
||||
"version": "1.0.0",
|
||||
"description": "Concatenate multiple strings",
|
||||
"author": "MetaBuilder",
|
||||
"license": "MIT",
|
||||
"keywords": ["string", "workflow", "plugin"],
|
||||
"main": "string_concat.hpp",
|
||||
"metadata": {
|
||||
"plugin_type": "string.concat",
|
||||
"category": "string"
|
||||
}
|
||||
}
|
||||
22
workflow/plugins/cpp/string/string_concat/string_concat.hpp
Normal file
22
workflow/plugins/cpp/string/string_concat/string_concat.hpp
Normal file
@@ -0,0 +1,22 @@
|
||||
#pragma once
|
||||
/**
|
||||
* Workflow plugin: concatenate strings
|
||||
*/
|
||||
|
||||
#include "../../plugin.hpp"
|
||||
|
||||
namespace metabuilder::workflow::string {
|
||||
|
||||
inline PluginResult concat(Runtime&, const json& inputs) {
|
||||
auto strings = inputs.value("strings", std::vector<std::string>{});
|
||||
auto separator = inputs.value("separator", std::string{});
|
||||
|
||||
std::string result;
|
||||
for (size_t i = 0; i < strings.size(); ++i) {
|
||||
if (i > 0) result += separator;
|
||||
result += strings[i];
|
||||
}
|
||||
return {{"result", result}};
|
||||
}
|
||||
|
||||
} // namespace metabuilder::workflow::string
|
||||
Reference in New Issue
Block a user