summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* type check propertiesstuebinm2021-09-183-56/+42
| | | | | | /finally/ figured out that all properties just look like {name, value, type} so now that's abstracted away and Properties.hs doesn't look like javascript anymore
* tame the stringsstuebinm2021-09-185-49/+62
| | | | | | Adds a PrettyPrint typeclass which operates on Text and should replace Show, since constantly converting strings from linked lists to arrays seems somewhat silly.
* (somewhat) reasonable representation of parse errorsstuebinm2021-09-173-23/+44
| | | | | | | | This makes map loading (and parsing) part of the linter, and also makes it return "general lints" and nothing else in case that failed. Possibly a sum type would be nicer here, but I guess it's not really important since everything ends up as json anyways?
* input options, output jsonstuebinm2021-09-165-63/+152
| | | | | | | input options are mostly dummies for now, but some work (e.g. --inpath and --json). Lints can now be optionally printed as json to be reasonably machine-readable (and the json can be pretty-printed to make it human-readable again …).
* some unused codestuebinm2021-09-161-5/+2
|
* moving lots of code aroundstuebinm2021-09-167-169/+260
| | | | (also renaming things now that concepts seem a bit clearer)
* small updatestuebinm2021-09-161-5/+6
|
* simple proof of conceptstuebinm2021-09-056-0/+41904
Lots of monads everywhere, hurray! (unfortunately, workadventure maps don't quite form a category; they lack composition …) Credits: - the example.json file is by TabascoEye (with some modifications for testing purposes) - the Tiled module is forked from aeson-tiled on hackage, since that package didn't handle custom layer properties correctly