fix bug in entity metadata encoding
This commit is contained in:
@@ -364,26 +364,16 @@ func EntityMetadataLoopEncoder(g *Generator, vts ast.Expr, dataRaw any, name str
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
for k, v := range vts.Val {
|
for _, v := range vts.Val {
|
||||||
WriteU8(w, uint8(k))
|
|
||||||
WriteData(w, v)
|
WriteData(w, v)
|
||||||
}
|
}
|
||||||
WriteU8(w, 0xFF)
|
WriteU8(w, 0xFF)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
encodeid, err := g.VisitEncoder(Ident("k"), "u8", name)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
encodeV, err := g.VisitEncoder(Ident("v"), data.Type, name)
|
encodeV, err := g.VisitEncoder(Ident("v"), data.Type, name)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
var innerstmts []ast.Stmt
|
forStmt := ForRangeKV(Ident("_"), Ident("v"), vts, NewBlock(encodeV))
|
||||||
innerstmts = append(innerstmts, encodeid...)
|
|
||||||
innerstmts = append(innerstmts, encodeV...)
|
|
||||||
|
|
||||||
forStmt := ForRangeKV(Ident("k"), Ident("v"), vts, NewBlock(innerstmts))
|
|
||||||
|
|
||||||
encodeEndId, err := g.VisitEncoder(Call(Ident("uint8"), NumLit(data.EndVal)), "u8", name)
|
encodeEndId, err := g.VisitEncoder(Call(Ident("uint8"), NumLit(data.EndVal)), "u8", name)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
Reference in New Issue
Block a user