Closed jkomoros closed 6 years ago
Also, should they be named the same thing?
Also could move boardgame.BaseSubState, probably others
ExtractName(customConfiguration) string
for every With() type, or a ValuExtractor(PropertyCollection) that has the typed getters for each thing in the library, so it only has one documentation entry point.) (grep for all uses of moves.Base in documentation) (moves.Base is pretty entertwined with a lot of logic in the moves package. Maybe have base.Move which only does extremely basic things, and then moves.Default which is the current moves.Base?)A lot of the tests in the main package rely on defaultgamedleegate. Could just duplicate the code into the main package for testing, or could pop out the game logic into an internal testgame package. (The main package can't trigger it because it'd need to import it and that would create a cycle.) This would also resolve an issue of the generic test game (what issue number is that?)
Named defaults. Would allow a global IsFixUp() method to cast the move to see if it has FixUp and then return the value as a convenience (so that boardgame.Move can lose that method, which is weird to be in the base package given it doesn't actually do anything)
Originally captured in #633.