mildew.types

This module is for convenient use by the scripting language internals. Host applications should only import func.d, object.d, and any.d most of the time.

────────────────────────────────────────────────────────────────────────────────

Copyright (C) 2021 pillager86.rf.gd

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.

Modules

any
module mildew.types.any

This module implements the ScriptAny struct, which can hold any value type usable in the scripting language.

array
module mildew.types.array

This module implements how arrays are internally handled. There is no reason to use this instead of constructing a ScriptAny with a D array or using toValue!(ScriptAny[]) on a ScriptAny that stores an array, unless it is necessary to modify the array in place inside a thisObj.

bindings
module mildew.types.bindings

This module implements the __proto__ field given to each special object such as ScriptObject, ScriptFunction, ScriptArray, and ScriptString, as well as the static methods for Object, Array, Function, and String

func
module mildew.types.func

This module implements the ScriptFunction class, which holds script defined functions as well as native D functions or delegates with the correct signature.

object
module mildew.types.object

This module implements ScriptObject, the base class for builtin Mildew objects.

string
module mildew.types.string

This module implements ScriptString. However, host applications should work with D strings by converting the ScriptAny directly to string with toString().

Public Imports

mildew.types.any
public import mildew.types.any;
mildew.types.array
public import mildew.types.array;
mildew.types.bindings
public import mildew.types.bindings;
mildew.types.func
public import mildew.types.func;
mildew.types.object
public import mildew.types.object;
mildew.types.string
public import mildew.types.string;

Meta