private static void FillRect(string str, uint[,] rect) { string[] dataSplit = str.Split(','); List <uint> result = new List <uint>(); int length = rect.Length; TiledDataParseContext context = new TiledDataParseContext(); foreach (var subData in dataSplit) { MatchContextStrategy(subData, context); context.Parse(subData, result, length); } FillDyadicArray(result, rect); }
private static void MatchContextStrategy(string subData, TiledDataParseContext context) { if (subData.Contains('-')) { context.Strategy = new TiledDataParseWithRange(); } else if (subData.Contains('*')) { context.Strategy = new TiledDataParseWithFill(); } else { context.Strategy = new TiledDataParseWithNothing(); } }