Class ExprContextValue<T, C extends TriggerContext>
java.lang.Object
io.github.syst3ms.skriptparser.expressions.ExprContextValue<T,C>
- All Implemented Interfaces:
Expression<T>, SyntaxElement
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionacceptsChange(ChangeMode mode) Determines whether this expression can be changed according to a specificChangeMode, and what type of values it can be changed with.voidchange(TriggerContext ctx, ChangeMode changeMode, Object[] changeWith) Changes this expression with the given values according to the given modeT[]getValues(TriggerContext ctx) Retrieves all values of this Expression, accounting for possible modifiers.booleaninit(Expression<?>[] expressions, int matchedPattern, ParseContext parseContext) Initializes this SyntaxElement before being used.booleanisSingle()toString(TriggerContext ctx, boolean debug) Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Expression
acceptsChange, acceptsChange, check, check, convertExpression, getArray, getSingle, getSource, isAndList, isLoopOf, iterator, setAndList, stream
-
Constructor Details
-
ExprContextValue
public ExprContextValue()
-
-
Method Details
-
init
@Contract("_, _, _ -> fail") public boolean init(Expression<?>[] expressions, int matchedPattern, ParseContext parseContext) 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).- Specified by:
initin interfaceSyntaxElement- 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 interface:ExpressionRetrieves all values of this Expression, accounting for possible modifiers. This means that if this is an or-list, it will choose a random value to return.- Specified by:
getValuesin interfaceExpression<T>- Parameters:
ctx- the event- Returns:
- an array of the values
- See Also:
-
acceptsChange
Description copied from interface:ExpressionDetermines whether this expression can be changed according to a specificChangeMode, and what type of values it can be changed with.- Specified by:
acceptsChangein interfaceExpression<T>- Parameters:
mode- the mode this Expression would be changed with- Returns:
- an array of classes describing what types this Expression can be changed with, empty if it
shouldn't be changed with the given change mode. If the change mode is
ChangeMode.DELETEorChangeMode.RESET, then an empty array should be returned.
-
change
Description copied from interface:ExpressionChanges this expression with the given values according to the given mode- Specified by:
changein interfaceExpression<T>- Parameters:
ctx- the eventchangeMode- the mode of changechangeWith- the values to change this Expression with
-
isSingle
public boolean isSingle()- Specified by:
isSinglein interfaceExpression<T>- Returns:
- whether this expression returns a single value. By default, this is defined on registration, but it can be overridden.
-
getReturnType
- Specified by:
getReturnTypein interfaceExpression<T>- Returns:
- the return type of this expression. By default, this is defined on registration, but, like Expression.isSingle(), can be overriden.
-
toString
- Specified by:
toStringin interfaceSyntaxElement- 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
-