devnote-dev / devnote-dev/xmlt

No way to specify that a structured property should be deserialized form attribute and not an element

未关闭
#1 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Crystal
星标
8
派生
0
PR 合并指标
30 天内没有已合并 PR

描述

Hi. Thanks for this useful shard, which when completed should be included in the standard lib. My issue could be made more clear using the following example.

```crystal
require "xmlt"

XML_FRAGMET = <<-XML

XML

class Repository
include XMLT::Serializable

property version : String
end

module Txmltest
repo = Repository.from_xml XML_FRAGMET, root: "repository"
p! repo.version
end
```

this crashes with the following trace

```
~/P/C/txmltest (main) [1]> shards run
Dependencies are satisfied
Building: txmltest
Executing: txmltest
Unhandled exception: Missing XML element 'version' (Exception)
from lib/xmlt/src/serializable.cr:162:7 in 'initialize:__xml_deserializable'
from src/txmltest.cr:9:3 in 'from_xml_node'
from src/txmltest.cr:9:3 in 'new:root'
from lib/xmlt/src/objects.cr:14:5 in 'from_xml:root'
from src/txmltest.cr:15:3 in '__crystal_main'
from /usr/lib/crystal/crystal/main.cr:115:5 in 'main_user_code'
from /usr/lib/crystal/crystal/main.cr:101:7 in 'main'
from /usr/lib/crystal/crystal/main.cr:127:3 in 'main'
from /usr/lib/libc.so.6 in '??'
from /usr/lib/libc.so.6 in '__libc_start_main'
from ../sysdeps/x86_64/start.S:117 in '_start'
from ???
```

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。