IData
Link to idata
Importing the class
Link to importing-the-class
It might be required for you to import the package if you encounter any issues (like casting an Array), so better be safe than sorry and add the import at the very top of the file.
ZenScript Copyimport crafttweaker.api.data.IData;
Implemented Interfaces
Link to implemented-interfaces
IData implements the following interfaces. That means all methods defined in these interfaces are also available in IData
Static Methods
Link to static-methods
Name: listOf
Creates a collection of the given IData members.
This attempts to give the most accurate type for the given members, for example, if all the members are bytes, then it returns a ByteArrayData.
However if the types are mixed or do not have a *ArrayData version, then a ListData is returned.
Returns: A list of the given members.
Return Type: IData
ZenScript Copy// IData.listOf(members as IData[]) as IData
IData.listOf(1, 2, 3);
Parameter | Type | Description |
---|---|---|
Parameter members | Type IData[] | Description The members to put in the list. |
Casters
Link to casters
Result Type | Is Implicit |
---|---|
Result Type boolean | Is Implicit false |
Result Type byte | Is Implicit false |
Result Type byte[] | Is Implicit false |
Result Type double | Is Implicit false |
Result Type float | Is Implicit false |
Result Type IData[string] | Is Implicit false |
Result Type int | Is Implicit false |
Result Type int[] | Is Implicit false |
Result Type long | Is Implicit false |
Result Type long[] | Is Implicit false |
Result Type short | Is Implicit false |
Result Type stdlib.List<IData> | Is Implicit false |
Result Type string | Is Implicit false |
Methods
Link to methods
Name: asBool
Casts this IData to a boolean.
Returns: this data as a bool
Return Type: boolean
ZenScript Copy// IData.asBool() as boolean
(1 as IData).asBool();
Name: asByte
Casts this IData to a byte.
Returns: this data as a byte
Return Type: byte
ZenScript Copy// IData.asByte() as byte
(1 as IData).asByte();
Name: asByteArray
Casts this IData to a byte array.
Returns: this data as a byte array
Return Type: byte[]
ZenScript Copy// IData.asByteArray() as byte[]
(1 as IData).asByteArray();
Name: asDouble
Casts this IData to a double.
Returns: this data as a double
Return Type: double
ZenScript Copy// IData.asDouble() as double
(1 as IData).asDouble();
Name: asFloat
Casts this IData to a float.
Returns: this data as a float
Return Type: float
ZenScript Copy// IData.asFloat() as float
(1 as IData).asFloat();
Name: asInt
Casts this IData to an int.
Returns: this data as an int
Return Type: int
ZenScript Copy// IData.asInt() as int
(1 as IData).asInt();
Name: asIntArray
Casts this IData to an int array.
Returns: this data as an int array
Return Type: int[]
ZenScript Copy// IData.asIntArray() as int[]
(1 as IData).asIntArray();
Name: asList
Casts this IData to a list.
Returns: this data as a list
Return Type: stdlib.List<IData>
ZenScript Copy// IData.asList() as stdlib.List<IData>
(1 as IData).asList();
Name: asLong
Casts this IData to a long.
Returns: this data as a long
Return Type: long
ZenScript Copy// IData.asLong() as long
(1 as IData).asLong();
Name: asLongArray
Casts this IData to a long array.
Returns: this data as a long array
Return Type: long[]
ZenScript Copy// IData.asLongArray() as long[]
(1 as IData).asLongArray();
Name: asMap
Casts this IData to a map.
Returns: this data as a map
Return Type: IData[string]
ZenScript Copy// IData.asMap() as IData[string]
(1 as IData).asMap();
Name: asShort
Casts this IData to a short.
Returns: this data as a short
Return Type: short
ZenScript Copy// IData.asShort() as short
(1 as IData).asShort();
Name: asString
Gets an escaped string version of this IData, quotes are included in the output
E.G println(("hello" as IData).asString())
prints "hello"
Returns: The escaped string version of this IData.
Return Type: string
ZenScript Copy// IData.asString() as string
(1 as IData).asString();
Name: compareTo
Compares this IData to the other IData
Returns: The comparison result.
Return Type: int
ZenScript Copy// IData.compareTo(other as IData) as int
(1 as IData).compareTo(5);
Parameter | Type | Description |
---|---|---|
Parameter other | Type IData | Description the data to be compared. |
Name: getAsString
Gets the literal string version of this IData.
E.G println(("hello" as IData).getAsString())
prints hello
Returns: The literal string version of this IData.
Return Type: string
ZenScript Copy// IData.getAsString() as string
(1 as IData).getAsString();
Name: getId
Gets the internal ID of this data.
Returns: the intenral ID of this data.
Return Type: byte
ZenScript Copy// IData.getId() as byte
(1 as IData).getId();
Name: getKeys
Gets the keys of this IData
Returns: The keys of this IData.
Return Type: Set<string>
ZenScript Copy// IData.getKeys() as Set<string>
(1 as IData).getKeys();
Name: isEmpty
Checks if this data is empty.
Returns: True if empty.
Return Type: boolean
ZenScript Copy// IData.isEmpty() as boolean
(1 as IData).isEmpty();
Name: length
Gets the length of this IData.
Returns: The length of this IData.
Return Type: int
ZenScript Copy// IData.length() as int
(1 as IData).length();
Name: map
Maps this IData to another IData based on the given operation.
Returns: A new IData from the operation
Return Type: IData
ZenScript Copy// IData.map(operation as Function<IData,IData>) as IData
(1 as IData).map((data) => 3);
Parameter | Type | Description |
---|---|---|
Parameter operation | Type Function<IData,IData> | Description The operation to apply to this IData |
Name: put
Puts the given value inside this IData at the given index.
ZenScript Copy// IData.put(index as string, value as IData?)
new MapData().put("key", "value");
Parameter | Type | Description |
---|---|---|
Parameter index | Type string | Description The key to store the data at |
Parameter value | Type IData? | Description The data to store. |
Name: remove
Removes the stored data at the given index.
ZenScript Copy// IData.remove(index as int)
[1, 2, 3] as IData.remove(0);
Parameter | Type | Description |
---|---|---|
Parameter index | Type int | Description The index to remove. |
Name: remove
Removes the stored data at the given key.
ZenScript Copy// IData.remove(key as string)
{key: "value"} as IData.remove("key");
Parameter | Type | Description |
---|---|---|
Parameter key | Type string | Description The key to remove. |
Name: setAt
Sets the given value inside this IData at the given index.
ZenScript CopyIData.setAt(name as string, data as IData?)
Parameter | Type | Description |
---|---|---|
Parameter name | Type string | Description The key to store the data at |
Parameter data | Type IData? | Description The data to store. |
Operators
Link to operators
Name: ADD
Adds the given IData to this IData.
ZenScript CopymyIData + other as IData
(1 as IData) + 2
Name: AND
Applies a bitwise AND (&) operation to this IData and the other IData
ZenScript CopymyIData & other as IData
(1 as IData) & 2
Name: CAT
Concatenates the given IData to this IData.
ZenScript CopymyIData ~ other as IData
(1 as IData) ~ 2
Name: COMPARE
Compares this IData to the other IData
ZenScript CopymyIData < other as IData
(1 as IData) < 5
Name: CONTAINS
Checks if this IData contains the other IData
For most data types, this will check equality of the data, but for map data, it will check if the other data is a string, and then check if it contains a key with that name
ZenScript Copyother as IData in myIData
Name: DIV
Divides the given IData from this IData.
ZenScript CopymyIData / other as IData
(1 as IData) / 2
Name: EQUALS
Checks if this IData is equal to the other IData.
ZenScript CopymyIData == other as IData
Name: INDEXGET
Gets the data at the given index.
ZenScript Copy[myIData]
[[1, 2, 3] as IData]
Name: INDEXSET
Puts the given value inside this IData at the given index.
ZenScript Copy[myIData] = index as string
[new MapData()] = "key"
Name: MOD
Applies a modulo operation to this IData against the other IData.
ZenScript CopymyIData % other as IData
(1 as IData) % 2
Name: MUL
Multiplies the given IData to this IData.
ZenScript CopymyIData * other as IData
(1 as IData) * 2
Name: NEG
Negates this IData.
ZenScript Copy-myIData
-(1 as IData)
Name: NOT
Applies a NOT (!) operation to this IData.
ZenScript Copy!myIData
!true
Name: OR
Applies a bitwise OR (|) operation to this IData and the other IData
ZenScript CopymyIData | other as IData
(1 as IData) | 2
Name: SHL
Applies a SHL (<<) operation to this data by the other data
ZenScript CopymyIData << other as IData
(1 as IData) << 2
Name: SHR
Applies a SHR (>>) operation to this data by the other data
ZenScript CopymyIData >> other as IData
(1 as IData) >> 2
Name: SUB
Subtracts the given IData from this IData.
ZenScript CopymyIData - other as IData
(1 as IData) - 2
Name: XOR
Applies a bitwise XOR (^) operation to this IData and the other IData
ZenScript CopymyIData ^ other as IData
(1 as IData) ^ 2
Properties
Link to properties
Name | Type | Has Getter | Has Setter | Description |
---|---|---|---|---|
Name isEmpty | Type boolean | Has Getter true | Has Setter false | Description Checks if this data is empty. |
Name keys | Type Set<string> | Has Getter true | Has Setter false | Description Gets the keys of this IData |
Name length | Type int | Has Getter true | Has Setter false | Description Gets the length of this IData. |