Class ExecExprListOperators
java.lang.Object
io.github.syst3ms.skriptparser.lang.Statement
io.github.syst3ms.skriptparser.lang.Effect
io.github.syst3ms.skriptparser.lang.base.ExecutableExpression<Object>
io.github.syst3ms.skriptparser.expressions.ExecExprListOperators
- All Implemented Interfaces:
Expression<Object>, SyntaxElement
Basic list operators that return the following elements:
Note that indices in Skript start at one and that both the lower and upper bounds are inclusive. The step function can be used in the
pop: the last elementshift/poll: the first elementextract: a specific (or just the first/last) elementsplice: elements in a certain bound
Note that indices in Skript start at one and that both the lower and upper bounds are inclusive. The step function can be used in the
splice pattern to skip over certain values. Note that
when a negative step function is used, the list is reversed as well as the lower and upper bounds,
which means the lower bound must be higher than the upper bound.- Since:
- ALPHA
- See Also:
-
Field Summary
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionObject[]getValues(TriggerContext ctx, boolean isEffect) Retrieves all values of this expression, if used as one.booleaninit(Expression<?>[] expressions, int matchedPattern, ParseContext parseContext) Initializes this SyntaxElement before being used.booleanisSingle()toString(TriggerContext ctx, boolean debug) Methods inherited from class ExecutableExpression
execute, getValuesMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Expression
acceptsChange, acceptsChange, acceptsChange, change, check, check, convertExpression, getArray, getReturnType, getSingle, getSource, isAndList, isLoopOf, iterator, setAndList, stream
-
Constructor Details
-
ExecExprListOperators
public ExecExprListOperators()
-
-
Method Details
-
init
Description copied from interface:SyntaxElementInitializes this SyntaxElement before being used. This method is always called before all the others in an extending class, the only exception beingCodeSection.loadSection(FileSection, ParserState, SkriptLogger).- Parameters:
expressions- an array of expressions representing all the expressions that are being passed to this syntax element. As opposed to Skript, elements of this array can't benull.matchedPattern- the index of the pattern that was successfully matched. It corresponds to the order of the syntaxes in registrationparseContext- an object containing additional information about the parsing of this syntax element, like regex matches and parse marks- Returns:
trueif the syntax element was initialized successfully,falseotherwise.- See Also:
-
getValues
Description copied from class:ExecutableExpressionRetrieves all values of this expression, if used as one. Otherwise, if used as an effect, performs side-effects with certainbehaviour. Note that when this is not the case, this syntax, by convention, should not have any side-effects.- Specified by:
getValuesin classExecutableExpression<Object>- Parameters:
ctx- the contextisEffect- whether this syntax is used as effect or as an expression- Returns:
- an array of the values
-
isSingle
public boolean isSingle()- Returns:
- whether this expression returns a single value. By default, this is defined on registration, but it can be overridden.
-
toString
- Parameters:
ctx- the eventdebug- whether to show additional information or not- Returns:
- a
Stringthat should aim to resemble what is written in the script as closely as possible
-