大家好:)我目前正在使用preon进行业余项目,我遇到了以下问题:我正在尝试使用以下代码读取固定长度的字符串:
@Bound int string_size;
@ByteAlign @BoundString(size = "string_size") my_string;
文件规范需要一个可变填充,因此下一个块的偏移量是 4 的倍数。例如,如果 string_size = 5,则将添加 3 个空字节,依此类推。我最初认为 @ByteAlign 注释正是这样做的,但是,查看源代码,我意识到事实并非如此。
我试图快速解决这个问题:
@If ("string_size % 4 == 2") @BoundList(size = "2", type = Byte.class) byte[] padding;
可悲的是,Limbo 似乎不支持“%”运算符。有没有解决的办法?
(另外,我在哪里/如何获得最新版本?)提前致谢。