System.Xml.Schema.SchemaCollectionCompiler.CalculateSequenceRange C# (CSharp) Méthode

CalculateSequenceRange() private méthode

private CalculateSequenceRange ( XmlSchemaSequence sequence, decimal &minOccurs, decimal &maxOccurs ) : void
sequence XmlSchemaSequence
minOccurs decimal
maxOccurs decimal
Résultat void
        private void CalculateSequenceRange(XmlSchemaSequence sequence, out decimal minOccurs, out decimal maxOccurs) {
            minOccurs = decimal.Zero; maxOccurs = decimal.Zero;
            foreach (XmlSchemaParticle p in sequence.Items) {
                minOccurs += p.MinOccurs;
                if (p.MaxOccurs == decimal.MaxValue)
                    maxOccurs = decimal.MaxValue;
                else if (maxOccurs != decimal.MaxValue)
                    maxOccurs += p.MaxOccurs;
            }
            minOccurs *= sequence.MinOccurs;
            if (sequence.MaxOccurs == decimal.MaxValue) {
                maxOccurs = decimal.MaxValue;
            }
            else if (maxOccurs != decimal.MaxValue) {
                maxOccurs *= sequence.MaxOccurs;
            }
        }