// TODO: there are many missing comments, but these really are consequences // of the buggy textpbfmt library. -- foo.cue -- a: string b: [...int] c: [...int32] m: [...#Msg] #Msg: { x: string y: string } -- input.textproto -- # file comment # doc comment a a: "dsfadsafsaf" # line comment # floating comment a-b # doc comment b b: [ # pre-elem comment # doc elem 0 123, # elem 0 line comment # trailing elem 0 # inbetween comment 1 # inbetween comment 2 # doc elem 1 456 # elem 1 line comment # trailing elem 1 # final floating 1 # final floating 2 ] # floating end c: 2342134 # line elem 0 c: 2342135 # line elem 1 # inbetween elems c: 2342136 # line elem 2 # after list c # floating m { x: "sdfff" # inner line comment y: "q\"qq\\q\n" # after last value } # after elem line # after elem separate m { x: " sdfff2 \321\202\320\265\321\201\321\202 " y: "q\tqq<>q2&\001\377" } # after list line # after list # floating end -- out/decode -- // file comment // doc comment a a: "dsfadsafsaf" // line comment // floating comment a-b // doc comment b b: [ // pre-elem comment // doc elem 0 123, // elem 0 line comment // trailing elem 0 // inbetween comment 1 // inbetween comment 2 // doc elem 1 456, // elem 1 line comment // trailing elem 1 // final floating 1 // final floating 2 ] // floating end c: [2342134, // line elem 0 2342135, // line elem 1 // inbetween elems 2342136, // line elem 2 ] // after list c // floating m: [{ x: "sdfff" // inner line comment y: "q\"qq\\q\n" // after last value }, // after elem line // after elem separate { x: " sdfff2 тест " y: "q\tqq<>q2&\u0001�" }, // after list line ] // after list // floating end