WangSet.parse constructor
WangSet.parse(
- Parser parser
Implementation
factory WangSet.parse(Parser parser) {
final colors = parser.formatSpecificParsing(
(json) => [
json.getChildrenAs('cornercolors', WangColor.parse),
json.getChildrenAs('edgecolors', WangColor.parse),
],
(xml) {
final isCorner = xml.getString('type') == 'corner';
final colors = xml.getChildrenAs('wangcolor', WangColor.parse);
return isCorner ? [colors, <WangColor>[]] : [<WangColor>[], colors];
},
);
return WangSet(
name: parser.getString('name'),
tile: parser.getInt('tile'),
cornerColors: colors[0],
edgeColors: colors[1],
wangTiles: parser.getChildrenAs('wangtiles', WangTile.parse),
properties: parser.getProperties(),
);
}