Show / Hide Table of Contents

Class Table

A class representing a Lua table.

Inheritance
System.Object
RefIdObject
Table
Inherited Members
RefIdObject.ReferenceID
RefIdObject.FormatTypeString(String)
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: System.Dynamic.ExpandoObject
Assembly: cs.temp.dll.dll
Syntax
public class Table : RefIdObject, IScriptPrivateResource

Constructors

Table(Script)

Initializes a new instance of the Table class.

Declaration
public Table(Script owner)
Parameters
Script owner

The owner script.

Table(Script, DynValue[])

Initializes a new instance of the Table class.

Declaration
public Table(Script owner, params DynValue[] arrayValues)
Parameters
Script owner

The owner.

DynValue[] arrayValues

The values for the "array-like" part of the table.

Properties

Item[Object]

Gets or sets the System.Object with the specified key(s). This will marshall CLR and MoonSharp objects in the best possible way.

Declaration
public object this[object key] { get; set; }
Parameters
System.Object key

The key.

Property Value
System.Object

The System.Object.

Item[Object[]]

Gets or sets the System.Object with the specified key(s). This will marshall CLR and MoonSharp objects in the best possible way. Multiple keys can be used to access subtables.

Declaration
public object this[params object[] keys] { get; set; }
Parameters
System.Object[] keys

The keys to access the table and subtables

Property Value
System.Object

The System.Object.

Keys

Enumerates the keys.

Declaration
public IEnumerable<DynValue> Keys { get; }
Property Value
IEnumerable<DynValue>

Length

Gets the length of the "array part".

Declaration
public int Length { get; }
Property Value
System.Int32

MetaTable

Gets the meta-table associated with this instance.

Declaration
public Table MetaTable { get; set; }
Property Value
Table

OwnerScript

Gets the script owning this resource.

Declaration
public Script OwnerScript { get; }
Property Value
Script

Implements
IScriptPrivateResource.OwnerScript

Pairs

Enumerates the key/value pairs.

Declaration
public IEnumerable<TablePair> Pairs { get; }
Property Value
IEnumerable<TablePair>

Values

Enumerates the values

Declaration
public IEnumerable<DynValue> Values { get; }
Property Value
IEnumerable<DynValue>

Methods

Append(DynValue)

Append the value to the table using the next available integer index.

Declaration
public void Append(DynValue value)
Parameters
DynValue value

The value.

Clear()

Removes all items from the Table.

Declaration
public void Clear()

CollectDeadKeys()

Collects the dead keys. This frees up memory but invalidates pending iterators. It's called automatically internally when the semantics of Lua tables allow, but can be forced externally if it's known that no iterators are pending.

Declaration
public void CollectDeadKeys()

Get(DynValue)

Gets the value associated with the specified key.

Declaration
public DynValue Get(DynValue key)
Parameters
DynValue key

The key.

Returns
DynValue

Get(Int32)

Gets the value associated with the specified key.

Declaration
public DynValue Get(int key)
Parameters
System.Int32 key

The key.

Returns
DynValue

Get(Object)

Gets the value associated with the specified key. (expressed as a System.Object).

Declaration
public DynValue Get(object key)
Parameters
System.Object key

The key.

Returns
DynValue

Get(Object[])

Gets the value associated with the specified keys (expressed as an array of System.Object). This will marshall CLR and MoonSharp objects in the best possible way. Multiple keys can be used to access subtables.

Declaration
public DynValue Get(params object[] keys)
Parameters
System.Object[] keys

The keys to access the table and subtables

Returns
DynValue

Get(String)

Gets the value associated with the specified key.

Declaration
public DynValue Get(string key)
Parameters
System.String key

The key.

Returns
DynValue

NextKey(DynValue)

Returns the next pair from a value

Declaration
public TablePair? NextKey(DynValue v)
Parameters
DynValue v

Returns
System.Nullable<TablePair>

RawGet(DynValue)

Gets the value associated with the specified key, without bringing to Nil the non-existant values.

Declaration
public DynValue RawGet(DynValue key)
Parameters
DynValue key

The key.

Returns
DynValue

RawGet(Int32)

Gets the value associated with the specified key, without bringing to Nil the non-existant values.

Declaration
public DynValue RawGet(int key)
Parameters
System.Int32 key

The key.

Returns
DynValue

RawGet(Object)

Gets the value associated with the specified key, without bringing to Nil the non-existant values.

Declaration
public DynValue RawGet(object key)
Parameters
System.Object key

The key.

Returns
DynValue

RawGet(Object[])

Gets the value associated with the specified keys (expressed as an array of System.Object). This will marshall CLR and MoonSharp objects in the best possible way. Multiple keys can be used to access subtables.

Declaration
public DynValue RawGet(params object[] keys)
Parameters
System.Object[] keys

The keys to access the table and subtables

Returns
DynValue

RawGet(String)

Gets the value associated with the specified key, without bringing to Nil the non-existant values.

Declaration
public DynValue RawGet(string key)
Parameters
System.String key

The key.

Returns
DynValue

Remove(DynValue)

Remove the value associated with the specified key from the table.

Declaration
public bool Remove(DynValue key)
Parameters
DynValue key

The key.

Returns
System.Boolean

true if values was successfully removed; otherwise, false.

Remove(Int32)

Remove the value associated with the specified key from the table.

Declaration
public bool Remove(int key)
Parameters
System.Int32 key

The key.

Returns
System.Boolean

true if values was successfully removed; otherwise, false.

Remove(Object)

Remove the value associated with the specified key from the table.

Declaration
public bool Remove(object key)
Parameters
System.Object key

The key.

Returns
System.Boolean

true if values was successfully removed; otherwise, false.

Remove(Object[])

Remove the value associated with the specified keys from the table. Multiple keys can be used to access subtables.

Declaration
public bool Remove(params object[] keys)
Parameters
System.Object[] keys

Returns
System.Boolean

true if values was successfully removed; otherwise, false.

Remove(String)

Remove the value associated with the specified key from the table.

Declaration
public bool Remove(string key)
Parameters
System.String key

The key.

Returns
System.Boolean

true if values was successfully removed; otherwise, false.

Set(DynValue, DynValue)

Sets the value associated to the specified key.

Declaration
public void Set(DynValue key, DynValue value)
Parameters
DynValue key

The key.

DynValue value

The value.

Set(Int32, DynValue)

Sets the value associated to the specified key.

Declaration
public void Set(int key, DynValue value)
Parameters
System.Int32 key

The key.

DynValue value

The value.

Set(Object, DynValue)

Sets the value associated with the specified key.

Declaration
public void Set(object key, DynValue value)
Parameters
System.Object key

The key.

DynValue value

The value.

Set(Object[], DynValue)

Sets the value associated with the specified keys. Multiple keys can be used to access subtables.

Declaration
public void Set(object[] keys, DynValue value)
Parameters
System.Object[] keys

DynValue value

The value.

Set(String, DynValue)

Sets the value associated to the specified key.

Declaration
public void Set(string key, DynValue value)
Parameters
System.String key

The key.

DynValue value

The value.

Back to top Built by Itinero, MIT licensed.