MultiValueSortedList<TKey, TValue> Class
              
              
              Namespace: Stride.Core.Collections
              Assembly: Stride.Core.dll
              
              
              Represents a priority queue, where keys are sorted and each key might have mlutiple values.
 
              
              
              
                 System.Object →  
                MultiValueSortedList<TKey, TValue>
              
              
                 Derived from MultiValueSortedList<TKey, TValue>: 
              
              
              
              
              
                public class MultiValueSortedList<TKey, TValue> : ILookup<TKey, TValue>, IEnumerable<IGrouping<TKey, TValue>>, ICollection<KeyValuePair<TKey, TValue>>, IEnumerable<KeyValuePair<TKey, TValue>>, ICollection, IEnumerable where TKey : IComparable<TKey>
               
              
              Type Parameters
              
                
                  
                    | Name | 
                    Description | 
                  
                
                
                  
                    | TKey | 
                    The type of the key. 
 | 
                  
                  
                    | TValue | 
                    The type of the value. 
 | 
                  
                
              
              
              
              
              
              
              
                
                  
                    | Name | 
                    Description | 
                    
                        
                  
                      
                         
              
                      | Properties
               | 
              
                          
                          | 
                              
                           | 
                          Count | 
                           | 
                          
                          
                          | 
                              
                           | 
                          IsFixedSize | 
                           | 
                          
                          
                          | 
                              
                           | 
                          IsSynchronized | 
                           | 
                          
                          
                          | 
                              
                           | 
                          Item[TKey] | 
                           | 
                          
                          
                          | 
                              
                           | 
                          Keys | 
                           | 
                          
                          
                          | 
                              
                           | 
                          SyncRoot | 
                           | 
                          
                          
                          | 
                              
                           | 
                          Values | 
                           | 
                          
              
                     
              
                      | Methods
               | 
              
                          
                          | 
                              
                           | 
                          Add(TKey, TValue) | 
                           | 
                          
                          
                          | 
                              
                           | 
                          Add(KeyValuePair<TKey, TValue>) | 
                           | 
                          
                          
                          | 
                              
                           | 
                          Add(Object, Object) | 
                           | 
                          
                          
                          | 
                              
                           | 
                          Contains(TKey) | 
                           | 
                          
                          
                          | 
                              
                           | 
                          Contains(KeyValuePair<TKey, TValue>) | 
                           | 
                          
                          
                          | 
                              
                           | 
                          Contains(Object) | 
                           | 
                          
                          
                          | 
                              
                           | 
                          ContainsKey(TKey) | 
                           | 
                          
                          
                          | 
                              
                           | 
                          CopyTo(Array, Int32) | 
                           | 
                          
                          
                          | 
                              
                           | 
                          CopyTo(KeyValuePair<TKey, TValue>[], Int32) | 
                           | 
                          
                          
                          | 
                              
                           | 
                          GetEnumerator() | 
                           | 
                          
                          
                          | 
                              
                           | 
                          Remove(TKey) | 
                           | 
                          
                          
                          | 
                              
                           | 
                          Remove(KeyValuePair<TKey, TValue>) | 
                           | 
                          
              
                     
              
                      | Explicit Interface Implementations
               | 
              
                          
                          | 
                              
                           | 
                          ICollection<KeyValuePair<TKey, TValue>>.Clear() | 
                           | 
                          
                          
                          | 
                              
                           | 
                          ICollection<KeyValuePair<TKey, TValue>>.Count | 
                           | 
                          
                          
                          | 
                              
                           | 
                          ICollection<KeyValuePair<TKey, TValue>>.IsReadOnly | 
                           | 
                          
                          
                          | 
                              
                           | 
                          IEnumerable<KeyValuePair<TKey, TValue>>.GetEnumerator() | 
                           | 
                          
                          
                          | 
                              
                           | 
                          ICollection.Count | 
                           | 
                          
                          
                          | 
                              
                           | 
                          IEnumerable.GetEnumerator() | 
                           | 
                          
              
              
                  
                
  
              
                     
              
                
                  |
                  Improve this Doc
                
                
                  View Source
                
              
              
                Properties
              
                
              
              
              
              
              
              Count
              
              
              
              
              
                public int Count { get; }
               
              
              Property Value
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Int32 | 
                     | 
                  
                
              
              
              
              
              
              
              IsFixedSize
              
              
              
              
              
                public bool IsFixedSize { get; }
               
              
              Property Value
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Boolean | 
                     | 
                  
                
              
              
              
              
              
              
              IsSynchronized
              
              
              
              
              
                public bool IsSynchronized { get; }
               
              
              Property Value
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Boolean | 
                     | 
                  
                
              
              
              
              
              
              
              Item[TKey]
              
              
              
              
              
                public IEnumerable<TValue> this[TKey key] { get; }
               
              
              Parameters
              
                
                  
                    | Type | 
                    Name | 
                    Description | 
                  
                
                
                  
                    | TKey | 
                    key | 
                     | 
                  
                
              
              Property Value
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Collections.Generic.IEnumerable<TValue> | 
                     | 
                  
                
              
              
              
              
              
              
              Keys
              
              
              
              
              
                public IEnumerable<TKey> Keys { get; }
               
              
              Property Value
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Collections.Generic.IEnumerable<TKey> | 
                     | 
                  
                
              
              
              
              
              
              
              SyncRoot
              
              
              
              
              
                public object SyncRoot { get; }
               
              
              Property Value
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Object | 
                     | 
                  
                
              
              
              
              
              
              
              Values
              
              
              
              
              
                public IEnumerable<TValue> Values { get; }
               
              
              Property Value
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Collections.Generic.IEnumerable<TValue> | 
                     | 
                  
                
              
                     
              
                
                  |
                  Improve this Doc
                
                
                  View Source
                
              
              
                Methods
              
                
              
              
              
              
              
              Add(TKey, TValue)
              
              
              
              
              
                public void Add(TKey key, TValue value)
               
              
              Parameters
              
                
                  
                    | Type | 
                    Name | 
                    Description | 
                  
                
                
                  
                    | TKey | 
                    key | 
                     | 
                  
                  
                    | TValue | 
                    value | 
                     | 
                  
                
              
              
              
              
              
              
              Add(KeyValuePair<TKey, TValue>)
              
              
              
              
              
                public void Add(KeyValuePair<TKey, TValue> item)
               
              
              Parameters
              
                
                  
                    | Type | 
                    Name | 
                    Description | 
                  
                
                
                  
                    | System.Collections.Generic.KeyValuePair<TKey, TValue> | 
                    item | 
                     | 
                  
                
              
              
              
              
              
              
              Add(Object, Object)
              
              
              
              
              
                public void Add(object key, object value)
               
              
              Parameters
              
                
                  
                    | Type | 
                    Name | 
                    Description | 
                  
                
                
                  
                    | System.Object | 
                    key | 
                     | 
                  
                  
                    | System.Object | 
                    value | 
                     | 
                  
                
              
              
              
              
              
              
              Contains(TKey)
              
              
              
              
              
                public bool Contains(TKey key)
               
              
              Parameters
              
                
                  
                    | Type | 
                    Name | 
                    Description | 
                  
                
                
                  
                    | TKey | 
                    key | 
                     | 
                  
                
              
              Returns
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Boolean | 
                     | 
                  
                
              
              
              
              
              
              
              Contains(KeyValuePair<TKey, TValue>)
              
              
              
              
              
                public bool Contains(KeyValuePair<TKey, TValue> item)
               
              
              Parameters
              
                
                  
                    | Type | 
                    Name | 
                    Description | 
                  
                
                
                  
                    | System.Collections.Generic.KeyValuePair<TKey, TValue> | 
                    item | 
                     | 
                  
                
              
              Returns
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Boolean | 
                     | 
                  
                
              
              
              
              
              
              
              Contains(Object)
              
              
              
              
              
                public bool Contains(object key)
               
              
              Parameters
              
                
                  
                    | Type | 
                    Name | 
                    Description | 
                  
                
                
                  
                    | System.Object | 
                    key | 
                     | 
                  
                
              
              Returns
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Boolean | 
                     | 
                  
                
              
              
              
              
              
              
              ContainsKey(TKey)
              
              
              
              
              
                public bool ContainsKey(TKey key)
               
              
              Parameters
              
                
                  
                    | Type | 
                    Name | 
                    Description | 
                  
                
                
                  
                    | TKey | 
                    key | 
                     | 
                  
                
              
              Returns
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Boolean | 
                     | 
                  
                
              
              
              
              
              
              
              CopyTo(Array, Int32)
              
              
              
              
              
                public void CopyTo(Array array, int index)
               
              
              Parameters
              
                
                  
                    | Type | 
                    Name | 
                    Description | 
                  
                
                
                  
                    | System.Array | 
                    array | 
                     | 
                  
                  
                    | System.Int32 | 
                    index | 
                     | 
                  
                
              
              
              
              
              
              
              CopyTo(KeyValuePair<TKey, TValue>[], Int32)
              
              
              
              
              
                public void CopyTo(KeyValuePair<TKey, TValue>[] array, int arrayIndex)
               
              
              Parameters
              
                
                  
                    | Type | 
                    Name | 
                    Description | 
                  
                
                
                  
                    | System.Collections.Generic.KeyValuePair<TKey, TValue>[] | 
                    array | 
                     | 
                  
                  
                    | System.Int32 | 
                    arrayIndex | 
                     | 
                  
                
              
              
              
              
              
              
              GetEnumerator()
              
              
              
              
              
                public IEnumerator<IGrouping<TKey, TValue>> GetEnumerator()
               
              
              Returns
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Collections.Generic.IEnumerator<System.Linq.IGrouping<TKey, TValue>> | 
                     | 
                  
                
              
              
              
              
              
              
              Remove(TKey)
              
              
              
              
              
                public bool Remove(TKey key)
               
              
              Parameters
              
                
                  
                    | Type | 
                    Name | 
                    Description | 
                  
                
                
                  
                    | TKey | 
                    key | 
                     | 
                  
                
              
              Returns
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Boolean | 
                     | 
                  
                
              
              
              
              
              
              
              Remove(KeyValuePair<TKey, TValue>)
              
              
              
              
              
                public bool Remove(KeyValuePair<TKey, TValue> item)
               
              
              Parameters
              
                
                  
                    | Type | 
                    Name | 
                    Description | 
                  
                
                
                  
                    | System.Collections.Generic.KeyValuePair<TKey, TValue> | 
                    item | 
                     | 
                  
                
              
              Returns
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Boolean | 
                     | 
                  
                
              
                     
              
                
                  |
                  Improve this Doc
                
                
                  View Source
                
              
              
                Explicit Interface Implementations
              
                
              
              
              
              
              
              ICollection<KeyValuePair<TKey, TValue>>.Clear()
              
              
              
              
              
                void ICollection<KeyValuePair<TKey, TValue>>.Clear()
               
              
              
              
              
              
              
              ICollection<KeyValuePair<TKey, TValue>>.Count
              
              
              
              
              
                int ICollection<KeyValuePair<TKey, TValue>>.Count { get; }
               
              
              Returns
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Int32 | 
                     | 
                  
                
              
              
              
              
              
              
              ICollection<KeyValuePair<TKey, TValue>>.IsReadOnly
              
              
              
              
              
                bool ICollection<KeyValuePair<TKey, TValue>>.IsReadOnly { get; }
               
              
              Returns
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Boolean | 
                     | 
                  
                
              
              
              
              
              
              
              IEnumerable<KeyValuePair<TKey, TValue>>.GetEnumerator()
              
              
              
              
              
                IEnumerator<KeyValuePair<TKey, TValue>> IEnumerable<KeyValuePair<TKey, TValue>>.GetEnumerator()
               
              
              Returns
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Collections.Generic.IEnumerator<System.Collections.Generic.KeyValuePair<TKey, TValue>> | 
                     | 
                  
                
              
              
              
              
              
              
              ICollection.Count
              
              
              
              
              
                int ICollection.Count { get; }
               
              
              Returns
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Int32 | 
                     | 
                  
                
              
              
              
              
              
              
              IEnumerable.GetEnumerator()
              
              
              
              
              
                IEnumerator IEnumerable.GetEnumerator()
               
              
              Returns
              
                
                  
                    | Type | 
                    Description | 
                  
                
                
                  
                    | System.Collections.IEnumerator | 
                     | 
                  
                
              
              
              
 
              
               
              
              
              
              
              Extension Methods