48 BadRuntimeApi.StartupArguments = args;
105 return runtime.UseCommonExtensions(useAsync)
134 .UseExtension<BadStringExtension>()
136 .UseExtension<BadTableExtension>()
138 .UseExtension<BadArrayExtension>()
140 .UseExtension<BadTypeSystemExtension>();
Exposes the BadScript Runtime Functionality to Consumers.
BadRuntime UseApi(BadInteropApi api, bool replace=false)
Adds or Replaces a specified API.
BadRuntime UseApis(IEnumerable< BadInteropApi > apis, bool replace=false)
Adds or Replaces a specified APIs.
BadRuntime UseExecutor(Func< BadExecutionContext, IEnumerable< BadExpression >, BadObject > executor)
Configures the Runtime to use the specified Executor.
Wrapper class for the console abstraction.
static IBadConsole GetConsole()
Returns the Current Console Implementation.
Implements the "Console" API.
Implements the "Math" API.
Implements the "Runtime" API.
Implements the "Xml" API.
Implements the Common Interop Wrapper.
static BadRuntime UseConsoleApi(this BadRuntime runtime, IBadConsole? console=null)
Configures the Runtime to use the Console API.
static BadRuntime UseCommonInterop(this BadRuntime runtime, bool useAsync=true)
Configures the Runtime to use the Common Interop Extensions.
static BadObject ExecuteTask(BadExecutionContext ctx, IEnumerable< BadExpression > exprs)
The Default Executor for asynchronous execution.
static BadRuntime UseCommonExtensions(this BadRuntime runtime, bool useAsync=true)
static BadRuntime UseStartupArguments(this BadRuntime runtime, IEnumerable< string > args)
Configures the Runtime to use the specified startup arguments.
static IEnumerable< BadInteropApi > Apis
All Common Interop Apis.
static readonly BadInteropApi[] s_CommonApis
All Common Interop Apis.
Implements Function Extensions.
Implements Number Extensions.
Implements Generic Object Extensions.
Implements Scope Extensions.
Implements a Runnable that can return a value.
BadObject GetReturn()
Gets the Return Value.
Implements the 'AsTask' Function.
Implements a Task Object.
static readonly BadClassPrototype Prototype
The BadTask Prototype.
BadRunnable Runnable
Runnable of the Task.
Implements the 'Concurrent' API.
The BadScript Task Runner.
void RunStep()
Runs a single step of the Task Runner.
void AddTask(BadTask task, bool runImmediately=false)
Adds a Task to the Task Runner.
static readonly BadTaskRunner Instance
The Task Runner Instance.
bool IsIdle
Is true if there are no tasks to run.
Implements a Version Object.
static readonly BadClassPrototype Prototype
The Version Class Prototype.
The Execution Context. Every execution of a script needs a context the script is running in....
IEnumerable< BadObject > Execute(IEnumerable< BadExpression > expressions)
Executes an enumeration of expressions.
Implements an Interop API for the BS2 Language.
The Base Class for all BadScript Objects.
string Name
The Name of the Type.
Helper Class that Builds a Native Class from a Prototype.
static void AddNative(BadClassPrototype native)
Adds a native Type.
static IEnumerable< BadClassPrototype > NativeTypes
Enumeration of all Native Class Prototypes.
Interface that abstracts the console.
Contains a Console Abstraction Layer to be able to Simulate Console Input/Output over the Network.
Contains Common Interop APIs for the BadScript2 Runtime.
Contains Common Interop Extensions for the BadScript2 Runtime.
Contains task/async Extensions and Integrations for the BadScript2 Runtime.
Contains Versioning Extensions and APIs for the BadScript2 Runtime.
Contains Common Interop Extensions and APIs for the BadScript2 Runtime.
Contains the Expressions for the BadScript2 Language.
Contains the Interop Abstractions and Implementations for the BadScript2 Language.
Contains Runtime Type Objects.
Contains the Runtime Objects.
Contains the Runtime Implementation.