示例#1
0
 public SrgsItemDebugDisplay(SrgsItem item)
 {
     _weight            = item._weight;
     _repeatProbability = item._repeatProbability;
     _minRepeat         = item._minRepeat;
     _maxRepeat         = item._maxRepeat;
     _elements          = item._elements;
 }
        IItem IElementFactory.CreateItem(IElement parent, IRule rule, int minRepeat, int maxRepeat, float repeatProbability, float weight)
        {
            SrgsItem srgsItem = new SrgsItem();

            if (minRepeat != 1 || maxRepeat != 1)
            {
                srgsItem.SetRepeat(minRepeat, maxRepeat);
            }
            srgsItem.RepeatProbability = repeatProbability;
            srgsItem.Weight            = weight;
            return(srgsItem);
        }
示例#3
0
        public SrgsOneOf(params SrgsItem[] items)
            : this()
        {
            Helpers.ThrowIfNull(items, nameof(items));

            for (int i = 0; i < items.Length; i++)
            {
                SrgsItem item = items[i];
                if (item == null)
                {
                    throw new ArgumentNullException(nameof(items), SR.Get(SRID.ParamsEntryNullIllegal));
                }

                _items.Add(item);
            }
        }
示例#4
0
        public SrgsOneOf(params SrgsItem[] items)
            : this()
        {
            Helpers.ThrowIfNull(items, "items");
            int num = 0;

            while (true)
            {
                if (num < items.Length)
                {
                    SrgsItem srgsItem = items[num];
                    if (srgsItem == null)
                    {
                        break;
                    }
                    _items.Add(srgsItem);
                    num++;
                    continue;
                }
                return;
            }
            throw new ArgumentNullException("items", SR.Get(SRID.ParamsEntryNullIllegal));
        }
示例#5
0
        public void Add(SrgsItem item)
        {
            Helpers.ThrowIfNull(item, nameof(item));

            Items.Add(item);
        }
示例#6
0
 public void Add(SrgsItem item)
 {
     Helpers.ThrowIfNull(item, "item");
     Items.Add(item);
 }