├── .formatter.exs ├── .github ├── PULL_REQUEST_TEMPLATE.md └── workflows │ ├── ci.yml │ └── release.yml ├── .gitignore ├── CHANGELOG.md ├── CONTRIBUTING.md ├── LICENSE.md ├── README.md ├── TODO ├── coveralls.json ├── examples ├── color.ex ├── integer_tree.ex ├── maybe.ex └── wrapped.ex ├── lib ├── ex_union.ex └── ex_union │ ├── definition.ex │ ├── definition │ ├── block.ex │ ├── type.ex │ └── type │ │ └── field.ex │ └── docs.ex ├── mix.exs ├── mix.lock └── test ├── test_helper.exs └── use_case ├── with_multiple_fields_test.exs ├── with_raw_values_test.exs ├── with_recursive_types_test.exs ├── with_remote_types_test.exs ├── with_simple_maybe_test.exs └── with_simple_types_test.exs /.formatter.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/.formatter.exs -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/.github/PULL_REQUEST_TEMPLATE.md -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/.github/workflows/release.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/.gitignore -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/LICENSE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/README.md -------------------------------------------------------------------------------- /TODO: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/TODO -------------------------------------------------------------------------------- /coveralls.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/coveralls.json -------------------------------------------------------------------------------- /examples/color.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/examples/color.ex -------------------------------------------------------------------------------- /examples/integer_tree.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/examples/integer_tree.ex -------------------------------------------------------------------------------- /examples/maybe.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/examples/maybe.ex -------------------------------------------------------------------------------- /examples/wrapped.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/examples/wrapped.ex -------------------------------------------------------------------------------- /lib/ex_union.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/lib/ex_union.ex -------------------------------------------------------------------------------- /lib/ex_union/definition.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/lib/ex_union/definition.ex -------------------------------------------------------------------------------- /lib/ex_union/definition/block.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/lib/ex_union/definition/block.ex -------------------------------------------------------------------------------- /lib/ex_union/definition/type.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/lib/ex_union/definition/type.ex -------------------------------------------------------------------------------- /lib/ex_union/definition/type/field.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/lib/ex_union/definition/type/field.ex -------------------------------------------------------------------------------- /lib/ex_union/docs.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/lib/ex_union/docs.ex -------------------------------------------------------------------------------- /mix.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/mix.exs -------------------------------------------------------------------------------- /mix.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/mix.lock -------------------------------------------------------------------------------- /test/test_helper.exs: -------------------------------------------------------------------------------- 1 | ExUnit.start() 2 | -------------------------------------------------------------------------------- /test/use_case/with_multiple_fields_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/test/use_case/with_multiple_fields_test.exs -------------------------------------------------------------------------------- /test/use_case/with_raw_values_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/test/use_case/with_raw_values_test.exs -------------------------------------------------------------------------------- /test/use_case/with_recursive_types_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/test/use_case/with_recursive_types_test.exs -------------------------------------------------------------------------------- /test/use_case/with_remote_types_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/test/use_case/with_remote_types_test.exs -------------------------------------------------------------------------------- /test/use_case/with_simple_maybe_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/test/use_case/with_simple_maybe_test.exs -------------------------------------------------------------------------------- /test/use_case/with_simple_types_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexocode/ex_union/HEAD/test/use_case/with_simple_types_test.exs --------------------------------------------------------------------------------