C# Class Microsoft.Scripting.Hosting.ScriptRuntime

Represents a Dynamic Language Runtime in Hosting API. Hosting API counterpart for ScriptDomainManager.
Inheritance: System.MarshalByRefObject
显示文件 Open project: jschementi/iron Class Usage Examples

Private Properties

Property Type Description
GetEngine ScriptEngine
GetEngineNoLockNoNotification ScriptEngine

Public Methods

Method Description
CreateFromConfiguration ( ) : ScriptRuntime

Creates a new runtime with languages set up according to the current application configuration (using System.Configuration).

CreateOperations ( ) : ObjectOperations
CreateRemote ( AppDomain domain, ScriptRuntimeSetup setup ) : ScriptRuntime

Creates ScriptRuntime in the current app-domain and initialized according to the the specified settings. Creates an instance of host class specified in the setup and associates it with the created runtime. Both Runtime and ScriptHost are collocated in the specified app-domain.

CreateScope ( ) : ScriptScope
CreateScope ( object>.IDictionary dictionary ) : ScriptScope
CreateScope ( IDynamicMetaObjectProvider storage ) : ScriptScope
CreateScope ( string languageId ) : ScriptScope
CreateScope ( string languageId, object>.IDictionary storage ) : ScriptScope
CreateScope ( string languageId, IDynamicMetaObjectProvider storage ) : ScriptScope
ExecuteFile ( string path ) : ScriptScope
GetEngine ( string languageName ) : ScriptEngine
GetEngineByFileExtension ( string fileExtension ) : ScriptEngine
GetEngineByTypeName ( string assemblyQualifiedTypeName ) : ScriptEngine
InitializeLifetimeService ( ) : object
LoadAssembly ( Assembly assembly ) : void

This method walks the assembly's namespaces and name bindings to ScriptRuntime.Globals to represent the types available in the assembly. Each top-level namespace name gets bound in Globals to a dynamic object representing the namespace. Within each top-level namespace object, nested namespace names are bound to dynamic objects representing each tier of nested namespaces. When this method encounters the same namespace-qualified name, it merges names together objects representing the namespaces.

ScriptRuntime ( ScriptRuntimeSetup setup ) : System

Creates ScriptRuntime in the current app-domain and initialized according to the the specified settings. Creates an instance of host class specified in the setup and associates it with the created runtime. Both Runtime and ScriptHost are collocated in the current app-domain.

Shutdown ( ) : void
TryGetEngine ( string languageName, ScriptEngine &engine ) : bool
TryGetEngineByFileExtension ( string fileExtension, ScriptEngine &engine ) : bool
UseFile ( string path ) : ScriptScope

Private Methods

Method Description
GetEngine ( LanguageContext language ) : ScriptEngine

Gets engine for the specified language.

GetEngineNoLockNoNotification ( LanguageContext language, bool &freshEngineCreated ) : ScriptEngine

Looks up the engine for the specified language. If the engine hasn't been created in this Runtime, it is instantiated here. The method doesn't lock nor send notifications to the host.

Method Details

CreateFromConfiguration() public static method

Creates a new runtime with languages set up according to the current application configuration (using System.Configuration).
public static CreateFromConfiguration ( ) : ScriptRuntime
return ScriptRuntime

CreateOperations() public method

public CreateOperations ( ) : ObjectOperations
return ObjectOperations

CreateRemote() public static method

Creates ScriptRuntime in the current app-domain and initialized according to the the specified settings. Creates an instance of host class specified in the setup and associates it with the created runtime. Both Runtime and ScriptHost are collocated in the specified app-domain.
public static CreateRemote ( AppDomain domain, ScriptRuntimeSetup setup ) : ScriptRuntime
domain System.AppDomain
setup ScriptRuntimeSetup
return ScriptRuntime

CreateScope() public method

public CreateScope ( ) : ScriptScope
return ScriptScope

CreateScope() public method

public CreateScope ( object>.IDictionary dictionary ) : ScriptScope
dictionary object>.IDictionary
return ScriptScope

CreateScope() public method

public CreateScope ( IDynamicMetaObjectProvider storage ) : ScriptScope
storage IDynamicMetaObjectProvider
return ScriptScope

CreateScope() public method

public CreateScope ( string languageId ) : ScriptScope
languageId string
return ScriptScope

CreateScope() public method

public CreateScope ( string languageId, object>.IDictionary storage ) : ScriptScope
languageId string
storage object>.IDictionary
return ScriptScope

CreateScope() public method

public CreateScope ( string languageId, IDynamicMetaObjectProvider storage ) : ScriptScope
languageId string
storage IDynamicMetaObjectProvider
return ScriptScope

ExecuteFile() public method

/// path is empty, contains one or more of the invalid characters defined in GetInvalidPathChars or doesn't have an extension. ///
public ExecuteFile ( string path ) : ScriptScope
path string
return ScriptScope

GetEngine() public method

public GetEngine ( string languageName ) : ScriptEngine
languageName string
return ScriptEngine

GetEngineByFileExtension() public method

public GetEngineByFileExtension ( string fileExtension ) : ScriptEngine
fileExtension string
return ScriptEngine

GetEngineByTypeName() public method

public GetEngineByTypeName ( string assemblyQualifiedTypeName ) : ScriptEngine
assemblyQualifiedTypeName string
return ScriptEngine

InitializeLifetimeService() public method

public InitializeLifetimeService ( ) : object
return object

LoadAssembly() public method

This method walks the assembly's namespaces and name bindings to ScriptRuntime.Globals to represent the types available in the assembly. Each top-level namespace name gets bound in Globals to a dynamic object representing the namespace. Within each top-level namespace object, nested namespace names are bound to dynamic objects representing each tier of nested namespaces. When this method encounters the same namespace-qualified name, it merges names together objects representing the namespaces.
public LoadAssembly ( Assembly assembly ) : void
assembly System.Reflection.Assembly
return void

ScriptRuntime() public method

Creates ScriptRuntime in the current app-domain and initialized according to the the specified settings. Creates an instance of host class specified in the setup and associates it with the created runtime. Both Runtime and ScriptHost are collocated in the current app-domain.
public ScriptRuntime ( ScriptRuntimeSetup setup ) : System
setup ScriptRuntimeSetup
return System

Shutdown() public method

public Shutdown ( ) : void
return void

TryGetEngine() public method

public TryGetEngine ( string languageName, ScriptEngine &engine ) : bool
languageName string
engine ScriptEngine
return bool

TryGetEngineByFileExtension() public method

public TryGetEngineByFileExtension ( string fileExtension, ScriptEngine &engine ) : bool
fileExtension string
engine ScriptEngine
return bool

UseFile() public method

path is null file extension does not map to language engine language does not have any search paths file does exist in language's search path
public UseFile ( string path ) : ScriptScope
path string
return ScriptScope