33 lines
797 B
Java
33 lines
797 B
Java
package io.gitlab.jfronny.muscript.data.dynamic;
|
|
|
|
import io.gitlab.jfronny.muscript.compiler.ExprWriter;
|
|
|
|
import java.io.IOException;
|
|
import java.util.List;
|
|
|
|
public non-sealed interface DList extends Dynamic<List<Dynamic<?>>> {
|
|
default Dynamic<?> get(int i) {
|
|
return getValue().get(i);
|
|
}
|
|
|
|
default int size() {
|
|
return getValue().size();
|
|
}
|
|
|
|
default boolean isEmpty() {
|
|
return getValue().isEmpty();
|
|
}
|
|
|
|
@Override
|
|
default void serialize(ExprWriter writer) throws IOException {
|
|
writer.append("listOf(");
|
|
boolean first = true;
|
|
for (Dynamic<?> dynamic : getValue()) {
|
|
if (!first) writer.append(", ");
|
|
first = false;
|
|
dynamic.serialize(writer);
|
|
}
|
|
writer.append(')');
|
|
}
|
|
}
|