Msg2swift 帮助您从 ROS .msg/.srv/.action 文件生成 Swift 模型。 旨在与 CDRCodable 结合使用。
特别是,Msg2swift 为编码和解码固定大小的数组生成正确的 CodableKeys。
运行以下命令以使用 Homebrew 安装
brew install DimaRU/formulae/msg2swift
当您将 CDRCodable 依赖项添加到您的项目时
.package(url: "https://github.com/DimaRU/CDRCodable", from: "1.0.0")
您可以使用 msg2swift SPM 命令行插件
swift package plugin --allow-writing-to-package-directory msg2swift ../../msg/BatteryState.msg -o model
USAGE: msg2swift [<options>] <file> ...
ARGUMENTS:
<file> .msg or .srv or .action file(s) to convert.
OPTIONS:
--let/--var Use var or let for model properties. (default: --let)
--struct/--class Struct or class declaration. (default: --struct)
--codable/--encodable/--decodable
Model declaration protocol. (default: --codable)
--snake-case/--no-snake-case
Convert property names from "snake_case" to
"camelCase" (default: --snake-case)
-c, --compact Compact generated code.
Strip all comments and remove empty lines.
--detect-enum/--no-detect-enum
Detect enums. (default: --detect-enum)
Detect and group constants into Swift enum.
-n, --name <name> Object name.
By default file name used.
-o, --output-directory <path>
The output path for generated files.
By default generated files written to the current directory.
-s, --silent Don't print processed file names.
--version Show the version.
-h, --help Show help information.
使用 Swift 包管理器进行构建。
https://github.com/DimaRU/Msg2swift.git
cd Msg2swift
swift build