~singpolyma/dhall-ruby

ref: c96020032566959f30bb9fa4c3af56dbe9849ef8 dhall-ruby/lib/dhall/ast.rb -rw-r--r-- 27.0 KiB
Update to latest dhall-lang
Split Union and Enum

Stop putting special case conditionals for Union#value.nil? everywhere
and just split the classes.
Customizable cache

Caches implemented in this commit:

StandardFileCache - cache conforming to dhall-lang
RamCache - stores in a hash, meant for single-load caching
NoCache - when you want to be sure
Timeout mechanism

Sets timeouts in HTTP readers, checks for deadline exceeded before each
resolution step, and uses Timeout::timeout for pure-ruby computations.
Fix Typo

Dhall::Text is obviously the Text builtin, not the Double one.
Do not load if already loaded

In case the resolver has some values already
Update handling of builtins

Always parse to a special value and not to variables.
Encode seperately.
Normalize text concat as interpolation
Parse expression from ENV var import

Instead of the path-only support from before.
Add grab-bag of useful utils onto expressions
Add as_dhall refinement
Optional#value is not what we want here
Run all dhal-lang typecheck tests
Run all dhall-lang tests for normalization
Pass all import tests
Environment variable failure can fallback
Allow imports to be either binary or source form
Update to new UnionType selection semantics
Fix rubocop except for parser metrics
Next