FastLED 3.10.9
Loading...
Searching...
No Matches

◆ methods()

json fl::Rpc::methods ( ) const

Returns flat method array: [["name", "returnType", [["param1", "type1"], ...]], ...] Format: Array of method tuples optimized for low-memory devices.

Each method is represented as: ["methodName", "returnType", [["param1", "type1"], ...]]

Definition at line 377 of file rpc.cpp.hpp.

377 {
378 json arr = json::array();
379 for (auto it = mRegistry.begin(); it != mRegistry.end(); ++it) {
380 // Format: ["methodName", "returnType", [["param1", "type1"], ["param2", "type2"]], "mode"]
381 json methodTuple = json::array();
382 methodTuple.push_back(it->first.c_str()); // Method name
383 methodTuple.push_back(it->second.mSchemaGenerator->resultTypeName()); // Return type
384 methodTuple.push_back(it->second.mSchemaGenerator->params()); // Params array
385
386 // Add mode (sync or async)
387 const char* modeStr = (it->second.mMode == RpcMode::ASYNC) ? "async" : "sync";
388 methodTuple.push_back(modeStr);
389
390 arr.push_back(methodTuple);
391 }
392 return arr;
393}
fl::unordered_map< fl::string, detail::RpcEntry > mRegistry
Definition rpc.h:417
static json array() FL_NO_EXCEPT
Definition json.h:860

References fl::json::array(), fl::ASYNC, fl::FL_NO_EXCEPT, mRegistry, and fl::json::push_back().

Referenced by schema().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: