private List <RelationalIndexOption> GetRelationalIndexOptionsList() { var options = new List <RelationalIndexOption>(); do { RelationalIndexOption option; if (Tokenizer.IsNextToken(Constants.PadIndex, Constants.SortInTempDb, Constants.IgnoreDupKey, Constants.StatisticsNorecompute, Constants.DropExisting, Constants.Online, Constants.AllowRowLocks, Constants.AllowPageLocks)) { string optionName = Tokenizer.Current.Value; Tokenizer.ReadNextToken(); Tokenizer.ExpectToken(Constants.Assignment); if (!Tokenizer.IsNextToken(Constants.On, Constants.Off)) { throw new SyntaxException("expects ON or OFF"); } option = new RelationalIndexOption(); option.Option = _optionMap[optionName]; option.Assignment = new StringExpression(Tokenizer.Current.Value, null); Tokenizer.ReadNextToken(); options.Add(option); } } while (Tokenizer.TokenEquals(Constants.Comma)); return(options); }
private string FormatIndexOptions(RelationalIndexOption option) { return(string.Format("{0} = {1}", _indexOptionMap[option.Option], option.Assignment.Value)); }