private static ColumnValueSet ColumnValues(UnpredictableColumnSource table, List <SnapshotTableDifferences> tableDiffs, UnpredictableColumnSource.UnpredictableColumn column)
        {
            var           tableForValues = tableDiffs.SingleOrDefault(d => d.TableDefinition.TableName == table.Table.TableName);
            List <object> values         = null;

            if (tableForValues != null)
            {
                values = ColumnValues(column.Column.Name, tableForValues).ToList();
            }

            var references = ColumnReferences(column, tableDiffs).Distinct().ToList();

            return(new ColumnValueSet(table.Table, column.Column, values ?? new List <object>(), references ?? new List <object>()));
        }
 public static List <ColumnValueSet> Scan(UnpredictableColumnSource table, List <SnapshotTableDifferences> tableDiffs)
 {
     return(table.Columns.Select(c => ColumnValues(table, tableDiffs, c)).Distinct().ToList());
 }