~singpolyma/dhall-ruby

ref: c96020032566959f30bb9fa4c3af56dbe9849ef8 dhall-ruby/lib/dhall/as_dhall.rb -rw-r--r-- 4.0 KiB
Hoist single-label enum into array
Split Union and Enum

Stop putting special case conditionals for Union#value.nil? everywhere
and just split the classes.
Allow as_dhall to be customised by encode_with

Dhall has a goal to replace YAML.  Ruby's ecosystem already has deep
integration with YAML (specifically with the Psych implementation in
stdlib) -- so if an object customises its YAML encoding, but doesn't
know about Dhall, customise the Dhall encoding in a compatible way.
Do not deep-annotate OpenStruct#as_dhall
Encoding binary string as List Natural

Certainly better than an error, and gives the dhall side access to the
individual bytes.
as_dhall for Symbol
Add grab-bag of useful utils onto expressions
nil hash values are omitted from record
Add as_dhall refinement