diff --git a/.gitignore b/.gitignore index 3d84f138316f540eda297573c9f4731aa7639cef..beeae30be86cb6092f86254eea9a57d56da74af6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /target /Cargo.lock -.idea/ \ No newline at end of file +.idea/ +.cargo \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000000000000000000000000000000000000..b0e679a90bb2513b8b1b06e26ab1cdbfcd2f3798 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,23 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +### Added + +- Conversion methods to construct a TileMatcher or TileLayout from any arbitrarily sized data array. This supports +both any-lengthed arrays (Though the methods will fail for non-square lengths), and any internal type that can be +converted to a Tile ID + +### Changed + +- **[BREAKING]** Swapped parameters of `TileMatcher::single` and `TileMatcher::single_match`, for better semantics + - `::single` Now expects one pre-configured rule + - `::single_match` Now expects a tile ID that will be converted to an exact match rule +- **[BREAKING]** `TileLayout` and `TileMatcher` now internally use a 7x7 grid instead of 3x3. This change +is only breaking if you directly accessed the internally stored data grid, or constructed an instance directly +without using one of the constructor methods \ No newline at end of file