├── .github └── workflows │ └── test.yml ├── .gitignore ├── LICENSE ├── README.md ├── example ├── fibonacci │ └── main.go ├── fxstrategy │ └── main.go ├── shippingStrategy │ ├── air.go │ ├── default.go │ ├── freight.go │ ├── local.go │ └── main.go ├── slice │ └── main.go ├── string │ └── main.go ├── switchunion │ └── main.go ├── withInput │ └── main.go └── withvalues │ └── main.go ├── go.mod ├── go.sum └── pattern ├── any.go ├── any_test.go ├── int.go ├── int_test.go ├── intersection.go ├── intersection_test.go ├── map.go ├── map_test.go ├── matcher.go ├── matcher_test.go ├── not.go ├── not_test.go ├── slice.go ├── slice_test.go ├── string.go ├── string_test.go ├── struct.go ├── struct_test.go ├── union.go ├── union_test.go ├── when.go └── when_test.go /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/README.md -------------------------------------------------------------------------------- /example/fibonacci/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/example/fibonacci/main.go -------------------------------------------------------------------------------- /example/fxstrategy/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/example/fxstrategy/main.go -------------------------------------------------------------------------------- /example/shippingStrategy/air.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/example/shippingStrategy/air.go -------------------------------------------------------------------------------- /example/shippingStrategy/default.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/example/shippingStrategy/default.go -------------------------------------------------------------------------------- /example/shippingStrategy/freight.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/example/shippingStrategy/freight.go -------------------------------------------------------------------------------- /example/shippingStrategy/local.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/example/shippingStrategy/local.go -------------------------------------------------------------------------------- /example/shippingStrategy/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/example/shippingStrategy/main.go -------------------------------------------------------------------------------- /example/slice/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/example/slice/main.go -------------------------------------------------------------------------------- /example/string/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/example/string/main.go -------------------------------------------------------------------------------- /example/switchunion/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/example/switchunion/main.go -------------------------------------------------------------------------------- /example/withInput/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/example/withInput/main.go -------------------------------------------------------------------------------- /example/withvalues/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/example/withvalues/main.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/go.sum -------------------------------------------------------------------------------- /pattern/any.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/any.go -------------------------------------------------------------------------------- /pattern/any_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/any_test.go -------------------------------------------------------------------------------- /pattern/int.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/int.go -------------------------------------------------------------------------------- /pattern/int_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/int_test.go -------------------------------------------------------------------------------- /pattern/intersection.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/intersection.go -------------------------------------------------------------------------------- /pattern/intersection_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/intersection_test.go -------------------------------------------------------------------------------- /pattern/map.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/map.go -------------------------------------------------------------------------------- /pattern/map_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/map_test.go -------------------------------------------------------------------------------- /pattern/matcher.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/matcher.go -------------------------------------------------------------------------------- /pattern/matcher_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/matcher_test.go -------------------------------------------------------------------------------- /pattern/not.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/not.go -------------------------------------------------------------------------------- /pattern/not_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/not_test.go -------------------------------------------------------------------------------- /pattern/slice.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/slice.go -------------------------------------------------------------------------------- /pattern/slice_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/slice_test.go -------------------------------------------------------------------------------- /pattern/string.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/string.go -------------------------------------------------------------------------------- /pattern/string_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/string_test.go -------------------------------------------------------------------------------- /pattern/struct.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/struct.go -------------------------------------------------------------------------------- /pattern/struct_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/struct_test.go -------------------------------------------------------------------------------- /pattern/union.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/union.go -------------------------------------------------------------------------------- /pattern/union_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/union_test.go -------------------------------------------------------------------------------- /pattern/when.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/when.go -------------------------------------------------------------------------------- /pattern/when_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PhakornKiong/go-pattern-match/HEAD/pattern/when_test.go --------------------------------------------------------------------------------