C# 클래스 IronPython.Runtime.CommonDictionaryStorage

상속: IronPython.Runtime.DictionaryStorage, ISerializable, IDeserializationCallback
파일 보기 프로젝트 열기: jschementi/iron 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
_buckets Bucket[]

공개 메소드들

메소드 설명
Add ( IronPython.Runtime.DictionaryStorage &storage, object key, object value ) : void
Add ( object key, object value ) : void

Adds a new item to the dictionary, replacing an existing one if it already exists.

AddNoLock ( IronPython.Runtime.DictionaryStorage &storage, object key, object value ) : void
AddNoLock ( object key, object value ) : void
Clear ( ) : void
Clear ( IronPython.Runtime.DictionaryStorage &storage ) : void

Clears the contents of the dictionary.

Clone ( ) : IronPython.Runtime.DictionaryStorage

Clones the storage returning a new DictionaryStorage object.

CommonDictionaryStorage ( ) : System

Creates a new dictionary storage with no buckets

CommonDictionaryStorage ( int count ) : System

Creates a new dictionary storage with no buckets

CommonDictionaryStorage ( object items, bool isHomogeneous ) : System

Creates a new dictionary geting values/keys from the items arary

Contains ( object key ) : bool

Checks to see if the key exists in the dictionary.

CopyTo ( IronPython.Runtime.DictionaryStorage into ) : IronPython.Runtime.DictionaryStorage
CopyTo ( IronPython.Runtime.DictionaryStorage &into ) : void
EnsureCapacityNoLock ( int size ) : void
GetEnumerator ( ) : object>>.IEnumerator
GetItems ( ) : object>>.List
GetKeys ( ) : IEnumerable
GetObjectData ( SerializationInfo info, StreamingContext context ) : void
HasNonStringAttributes ( ) : bool
Remove ( IronPython.Runtime.DictionaryStorage &storage, object key ) : bool

Removes an entry from the dictionary and returns true if the entry was removed or false.

Remove ( object key ) : bool
TryGetValue ( object key, object &value ) : bool

Trys to get the value associated with the given key and returns true if it's found or false if it's not present.

TryRemoveValue ( IronPython.Runtime.DictionaryStorage &storage, object key, object &value ) : bool
TryRemoveValue ( object key, object &value ) : bool

보호된 메소드들

메소드 설명
AddWorker ( Bucket buckets, object key, object value, int hc ) : bool

Add helper which adds the given key/value (where the key is not null) with a pre-computed hash code.

IDeserializationCallback ( object sender ) : void
TryGetValue ( Bucket buckets, object key, int hc, Func eqFunc, object &value ) : bool
TryRemoveNoLock ( object key, Func eqFunc, int hc, object &value ) : bool

비공개 메소드들

메소드 설명
Add ( Bucket buckets, object key, object value ) : bool

Add helper that works over a single set of buckets. Used for both the normal add case as well as the resize case.

AddItems ( object items ) : void
AddNull ( object value ) : void
AddOne ( object key, object value ) : void
AssignSiteDelegates ( CallSite hashSite, CallSite equalSite ) : void
CommonCopyTo ( CommonDictionaryStorage into ) : void
CommonDictionaryStorage ( Bucket buckets, int count, Type keyType, int>.Func hashFunc, Func eqFunc, NullValue nullValue ) : System

Creates a new dictionary storage with the given set of buckets and size. Used when cloning the dictionary storage.

CommonDictionaryStorage ( SerializationInfo info, StreamingContext context ) : System
DoubleEquals ( object o1, object o2 ) : bool
DoubleHash ( object o ) : int
EnsureSize ( int newSize ) : void
GenericEquals ( object o1, object o2 ) : bool
GenericHash ( object o ) : int
GetDeserializationBucket ( ) : DeserializationNullValue
Hash ( object key ) : int

Helper to hash the given key w/ support for null.

Initialize ( ) : void

Initializes the buckets to their initial capacity, the caller must check if the buckets are empty first.

IntEquals ( object o1, object o2 ) : bool
IntHash ( object o ) : int
PrimitiveHash ( object o ) : int
ProbeNext ( Bucket buckets, int index ) : int
RemoveAlwaysHash ( object key ) : bool

Removes an entry from the dictionary and returns true if the entry was removed or false. The key will always be hashed so if it is unhashable an exception will be thrown - even if the dictionary has no buckets.

SetHeterogeneousSites ( ) : void
StringEquals ( object o1, object o2 ) : bool
TryGetValue ( Bucket buckets, object key, object &value ) : bool

Static helper to try and get the value from the dictionary. Used so the value lookup can run against a buckets while a writer replaces the buckets.

TryRemoveNoLock ( object key, object &value ) : bool
TryRemoveNull ( object &value ) : bool
TupleEquals ( object o1, object o2 ) : bool
TupleHash ( object o ) : int
UncommonCopyTo ( IronPython.Runtime.DictionaryStorage &into ) : void
UpdateHelperFunctions ( Type t, object key ) : void

메소드 상세

Add() 공개 메소드

public Add ( IronPython.Runtime.DictionaryStorage &storage, object key, object value ) : void
storage IronPython.Runtime.DictionaryStorage
key object
value object
리턴 void

Add() 공개 메소드

Adds a new item to the dictionary, replacing an existing one if it already exists.
public Add ( object key, object value ) : void
key object
value object
리턴 void

AddNoLock() 공개 메소드

public AddNoLock ( IronPython.Runtime.DictionaryStorage &storage, object key, object value ) : void
storage IronPython.Runtime.DictionaryStorage
key object
value object
리턴 void

AddNoLock() 공개 메소드

public AddNoLock ( object key, object value ) : void
key object
value object
리턴 void

AddWorker() 보호된 메소드

Add helper which adds the given key/value (where the key is not null) with a pre-computed hash code.
protected AddWorker ( Bucket buckets, object key, object value, int hc ) : bool
buckets Bucket
key object
value object
hc int
리턴 bool

Clear() 공개 메소드

public Clear ( ) : void
리턴 void

Clear() 공개 메소드

Clears the contents of the dictionary.
public Clear ( IronPython.Runtime.DictionaryStorage &storage ) : void
storage IronPython.Runtime.DictionaryStorage
리턴 void

Clone() 공개 메소드

Clones the storage returning a new DictionaryStorage object.
public Clone ( ) : IronPython.Runtime.DictionaryStorage
리턴 IronPython.Runtime.DictionaryStorage

CommonDictionaryStorage() 공개 메소드

Creates a new dictionary storage with no buckets
public CommonDictionaryStorage ( ) : System
리턴 System

CommonDictionaryStorage() 공개 메소드

Creates a new dictionary storage with no buckets
public CommonDictionaryStorage ( int count ) : System
count int
리턴 System

CommonDictionaryStorage() 공개 메소드

Creates a new dictionary geting values/keys from the items arary
public CommonDictionaryStorage ( object items, bool isHomogeneous ) : System
items object
isHomogeneous bool
리턴 System

Contains() 공개 메소드

Checks to see if the key exists in the dictionary.
public Contains ( object key ) : bool
key object
리턴 bool

CopyTo() 공개 메소드

public CopyTo ( IronPython.Runtime.DictionaryStorage into ) : IronPython.Runtime.DictionaryStorage
into IronPython.Runtime.DictionaryStorage
리턴 IronPython.Runtime.DictionaryStorage

CopyTo() 공개 메소드

public CopyTo ( IronPython.Runtime.DictionaryStorage &into ) : void
into IronPython.Runtime.DictionaryStorage
리턴 void

EnsureCapacityNoLock() 공개 메소드

public EnsureCapacityNoLock ( int size ) : void
size int
리턴 void

GetEnumerator() 공개 메소드

public GetEnumerator ( ) : object>>.IEnumerator
리턴 object>>.IEnumerator

GetItems() 공개 메소드

public GetItems ( ) : object>>.List
리턴 object>>.List

GetKeys() 공개 메소드

public GetKeys ( ) : IEnumerable
리턴 IEnumerable

GetObjectData() 공개 메소드

public GetObjectData ( SerializationInfo info, StreamingContext context ) : void
info System.Runtime.Serialization.SerializationInfo
context System.Runtime.Serialization.StreamingContext
리턴 void

HasNonStringAttributes() 공개 메소드

public HasNonStringAttributes ( ) : bool
리턴 bool

IDeserializationCallback() 보호된 메소드

protected IDeserializationCallback ( object sender ) : void
sender object
리턴 void

Remove() 공개 메소드

Removes an entry from the dictionary and returns true if the entry was removed or false.
public Remove ( IronPython.Runtime.DictionaryStorage &storage, object key ) : bool
storage IronPython.Runtime.DictionaryStorage
key object
리턴 bool

Remove() 공개 메소드

public Remove ( object key ) : bool
key object
리턴 bool

TryGetValue() 보호된 정적인 메소드

protected static TryGetValue ( Bucket buckets, object key, int hc, Func eqFunc, object &value ) : bool
buckets Bucket
key object
hc int
eqFunc Func
value object
리턴 bool

TryGetValue() 공개 메소드

Trys to get the value associated with the given key and returns true if it's found or false if it's not present.
public TryGetValue ( object key, object &value ) : bool
key object
value object
리턴 bool

TryRemoveNoLock() 보호된 메소드

protected TryRemoveNoLock ( object key, Func eqFunc, int hc, object &value ) : bool
key object
eqFunc Func
hc int
value object
리턴 bool

TryRemoveValue() 공개 메소드

public TryRemoveValue ( IronPython.Runtime.DictionaryStorage &storage, object key, object &value ) : bool
storage IronPython.Runtime.DictionaryStorage
key object
value object
리턴 bool

TryRemoveValue() 공개 메소드

public TryRemoveValue ( object key, object &value ) : bool
key object
value object
리턴 bool

프로퍼티 상세

_buckets 보호되어 있는 프로퍼티

protected Bucket[] _buckets
리턴 Bucket[]