C# 클래스 Microsoft.Scripting.ScopeStorage

Provides optimized and cacheable support for scope storage. This is the default object used for storing values in a scope.
The implementation uses a case-insensitive dictionary which holds onto ScopeVariableIgnoreCase objects. The SVIC's hold onto ScopeVariable objects for each possible casing.
상속: IDynamicMetaObjectProvider
파일 보기 프로젝트 열기: jschementi/iron 1 사용 예제들

공개 메소드들

메소드 설명
DeleteValue ( string name, bool ignoreCase ) : bool

Deletes the named value from the scope optionally ignoring the case.

GetItems ( ) : dynamic>>.IList

Returns all of the member names and their associated values from the scope. The list contains all available casings.

GetMemberNames ( ) : IList

Returns all of the member names which currently have values in the scope. The list contains all available casings.

GetMetaObject ( Expression parameter ) : DynamicMetaObject
GetScopeVariable ( string name, bool ignoreCase ) : IScopeVariable

Gets the IScopeVariable for the scope optionally ignoring case. The IScopeVariable can be held onto and get/set/deleted without performing a dictionary lookup on subsequent accesses.

GetScopeVariable ( string name ) : ScopeVariable

Gets the ScopeVariable for the scope in a case-sensitive manner. The ScopeVariable can be held onto and get/set/deleted without performing a dictionary lookup on subsequent accesses.

GetScopeVariableIgnoreCase ( string name ) : ScopeVariableIgnoreCase

Gets the ScopeVariableIgnoreCase for the scope in a case-insensitive manner. The ScopeVariable can be held onto and get/set/deleted without performing a dictionary lookup on subsequent accesses.

GetValue ( string name, bool ignoreCase ) : Object

Gets the named value from the scope optionally ignoring case. If the named value is not present an InvalidOperationException is raised.

HasValue ( string name, bool ignoreCase ) : bool

Checks if the named value is present in the scope optionally ignoring the case.

SetValue ( string name, bool ignoreCase, object value ) : void

Sets the named value in the scope optionally ignoring the case.

TryGetValue ( string name, bool ignoreCase, Object &value ) : bool

Attempts to get the named value from the scope optionally ignoring the case. Returns true if the value is present, false if it is not.

this ( string index ) : Object

Provides convenient case-sensitive value access.

비공개 메소드들

메소드 설명
HasVariable ( string name ) : bool

메소드 상세

DeleteValue() 공개 메소드

Deletes the named value from the scope optionally ignoring the case.
public DeleteValue ( string name, bool ignoreCase ) : bool
name string
ignoreCase bool
리턴 bool

GetItems() 공개 메소드

Returns all of the member names and their associated values from the scope. The list contains all available casings.
public GetItems ( ) : dynamic>>.IList
리턴 dynamic>>.IList

GetMemberNames() 공개 메소드

Returns all of the member names which currently have values in the scope. The list contains all available casings.
public GetMemberNames ( ) : IList
리턴 IList

GetMetaObject() 공개 메소드

public GetMetaObject ( Expression parameter ) : DynamicMetaObject
parameter Expression
리턴 DynamicMetaObject

GetScopeVariable() 공개 메소드

Gets the IScopeVariable for the scope optionally ignoring case. The IScopeVariable can be held onto and get/set/deleted without performing a dictionary lookup on subsequent accesses.
public GetScopeVariable ( string name, bool ignoreCase ) : IScopeVariable
name string
ignoreCase bool
리턴 IScopeVariable

GetScopeVariable() 공개 메소드

Gets the ScopeVariable for the scope in a case-sensitive manner. The ScopeVariable can be held onto and get/set/deleted without performing a dictionary lookup on subsequent accesses.
public GetScopeVariable ( string name ) : ScopeVariable
name string
리턴 ScopeVariable

GetScopeVariableIgnoreCase() 공개 메소드

Gets the ScopeVariableIgnoreCase for the scope in a case-insensitive manner. The ScopeVariable can be held onto and get/set/deleted without performing a dictionary lookup on subsequent accesses.
public GetScopeVariableIgnoreCase ( string name ) : ScopeVariableIgnoreCase
name string
리턴 ScopeVariableIgnoreCase

GetValue() 공개 메소드

Gets the named value from the scope optionally ignoring case. If the named value is not present an InvalidOperationException is raised.
public GetValue ( string name, bool ignoreCase ) : Object
name string
ignoreCase bool
리턴 System.Object

HasValue() 공개 메소드

Checks if the named value is present in the scope optionally ignoring the case.
public HasValue ( string name, bool ignoreCase ) : bool
name string
ignoreCase bool
리턴 bool

SetValue() 공개 메소드

Sets the named value in the scope optionally ignoring the case.
public SetValue ( string name, bool ignoreCase, object value ) : void
name string
ignoreCase bool
value object
리턴 void

TryGetValue() 공개 메소드

Attempts to get the named value from the scope optionally ignoring the case. Returns true if the value is present, false if it is not.
public TryGetValue ( string name, bool ignoreCase, Object &value ) : bool
name string
ignoreCase bool
value System.Object
리턴 bool

this() 공개 메소드

Provides convenient case-sensitive value access.
public this ( string index ) : Object
index string
리턴 System.Object