diff --git a/src/macros/SerializerParentMacro.cj b/src/macros/SerializerParentMacro.cj index 3ccb39b..c71259d 100644 --- a/src/macros/SerializerParentMacro.cj +++ b/src/macros/SerializerParentMacro.cj @@ -85,7 +85,7 @@ public macro SerializerParent(input: Tokens): Tokens { throw ASTException("@SerializerParent 只能标注在 class 声明上(不支持 struct/interface/enum)") } -/// 收集类体内的可序列化字段(_ 前缀 + 类型注解;跳过 @SerializerIgnore;@SerializerPropertyName 用注解名) +/// 收集类体内的可序列化字段(任意 var/let 字段 + 类型注解;跳过 @SerializerIgnore;@SerializerPropertyName 用注解名) private func collectFields(cd: ClassDecl): ArrayList { var result = ArrayList() for (d in cd.body.decls) { @@ -118,9 +118,9 @@ private func collectFields(cd: ClassDecl): ArrayList { result } -/// 普通字段是否可序列化:_ 前缀 + 有类型注解 +/// 普通字段是否可序列化:有类型注解(不要求 _ 前缀) private func isSerializableField(vd: VarDecl): Bool { - vd.identifier.value.startsWith("_") && !vd.colon.value.isEmpty() + !vd.colon.value.isEmpty() } /// 从 MacroExpandDecl 提取内部 VarDecl(带注解的字段声明)