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
Copy
import crafttweaker.api.data.StringData;

Implemented Interfaces

Link to implemented-interfaces

StringData implements the following interfaces. That means all methods defined in these interfaces are also available in StringData

ZenScript
Copy
new StringData(internal as string) as StringData
ParameterType
Parameter
internal
Type
string
Result TypeIs Implicit
Result Type
byte[]
Is Implicit
false
Result Type
IData[string]
Is Implicit
false
Result Type
int[]
Is Implicit
false
Result Type
long[]
Is Implicit
false
Result Type
stdlib.List<IData>
Is Implicit
false
Result Type
string
Is Implicit
false

Name: asByteArray

Casts this IData to a byte array.

Returns: this data as a byte array
Return Type: byte[]

ZenScript
Copy
// StringData.asByteArray() as byte[]

("Hello" as IData).asByteArray();

Name: asIntArray

Casts this IData to an int array.

Returns: this data as an int array
Return Type: int[]

ZenScript
Copy
// StringData.asIntArray() as int[]

("Hello" as IData).asIntArray();

Name: asList

Casts this IData to a list.

Returns: this data as a list
Return Type: stdlib.List<IData>

ZenScript
Copy
// StringData.asList() as stdlib.List<IData>

("Hello" as IData).asList();

Name: asLongArray

Casts this IData to a long array.

Returns: this data as a long array
Return Type: long[]

ZenScript
Copy
// StringData.asLongArray() as long[]

("Hello" as IData).asLongArray();

Name: asMap

Casts this IData to a map.

Returns: this data as a map
Return Type: IData[string]

ZenScript
Copy
// StringData.asMap() as IData[string]

("Hello" as IData).asMap();

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
// StringData.asString() as string

("Hello" as IData).asString();

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
// StringData.getAsString() as string

("Hello" as IData).getAsString();

Name: getId

Gets the internal ID of this data.

Returns: the intenral ID of this data.
Return Type: byte

ZenScript
Copy
// StringData.getId() as byte

("Hello" as IData).getId();

Name: getKeys

Gets the keys of this IData

Returns: The keys of this IData.
Return Type: Set<string>

ZenScript
Copy
// StringData.getKeys() as Set<string>

("Hello" as IData).getKeys();

Name: isEmpty

Checks if this data is empty.

Returns: True if empty.
Return Type: boolean

ZenScript
Copy
// StringData.isEmpty() as boolean

("Hello" as IData).isEmpty();

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
// StringData.map(operation as Function<IData,IData>) as IData

("Hello" as IData).map((data) => 3);
ParameterTypeDescription
Parameter
operation
Type
Function<IData,IData>
Description
The operation to apply to this IData

Name: merge

Merges the given data with this data.

Returns: the result of merging the datas.
Return Type: IData

ZenScript
Copy
StringData.merge(other as IData) as IData
ParameterTypeDescription
Parameter
other
Type
IData
Description
the data to merge

Name: put

Puts the given value inside this IData at the given index.

ZenScript
Copy
// StringData.put(index as string, value as IData?)

new MapData().put("key", "value");
ParameterTypeDescription
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
// StringData.remove(index as int)

[1, 2, 3] as IData.remove(0);
ParameterTypeDescription
Parameter
index
Type
int
Description
The index to remove.

Name: remove

Removes the stored data at the given key.

ZenScript
Copy
// StringData.remove(key as string)

{key: "value"} as IData.remove("key");
ParameterTypeDescription
Parameter
key
Type
string
Description
The key to remove.

Name: setAt

Sets the given value inside this IData at the given index.

ZenScript
Copy
StringData.setAt(name as string, data as IData?)
ParameterTypeDescription
Parameter
name
Type
string
Description
The key to store the data at
Parameter
data
Type
IData?
Description
The data to store.

Name: AND

Applies a bitwise AND (&) operation to this IData and the other IData

ZenScript
Copy
myStringData & other as IData
("Hello" as IData) & 2

Name: DIV

Divides the given IData from this IData.

ZenScript
Copy
myStringData / other as IData
("Hello" as IData) / 2

Name: INDEXGET

Gets the data at the given index.

ZenScript
Copy
[myStringData]
[[1, 2, 3] as IData]

Name: INDEXSET

Puts the given value inside this IData at the given index.

ZenScript
Copy
[myStringData] = index as string
[new MapData()] = "key"

Name: MOD

Applies a modulo operation to this IData against the other IData.

ZenScript
Copy
myStringData % other as IData
("Hello" as IData) % 2

Name: MUL

Multiplies the given IData to this IData.

ZenScript
Copy
myStringData * other as IData
("Hello" as IData) * 2

Name: NEG

Negates this IData.

ZenScript
Copy
-myStringData
-("Hello" as IData)

Name: NOT

Applies a NOT (!) operation to this IData.

ZenScript
Copy
!myStringData
!true

Name: OR

Applies a bitwise OR (|) operation to this IData and the other IData

ZenScript
Copy
myStringData | other as IData
("Hello" as IData) | 2

Name: SHL

Applies a SHL (<<) operation to this data by the other data

ZenScript
Copy
myStringData << other as IData
("Hello" as IData) << 2

Name: SHR

Applies a SHR (>>) operation to this data by the other data

ZenScript
Copy
myStringData >> other as IData
("Hello" as IData) >> 2

Name: SUB

Subtracts the given IData from this IData.

ZenScript
Copy
myStringData - other as IData
("Hello" as IData) - 2

Name: XOR

Applies a bitwise XOR (^) operation to this IData and the other IData

ZenScript
Copy
myStringData ^ other as IData
("Hello" as IData) ^ 2
NameTypeHas GetterHas SetterDescription
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