Package org.incendo.cloud.parser.flag
Class CommandFlag.Builder<C,T>
java.lang.Object
org.incendo.cloud.parser.flag.CommandFlag.Builder<C,T>
- Enclosing class:
CommandFlag<T>
-
Method Summary
Modifier and TypeMethodDescriptionMarks the flag asCommandFlag.FlagMode.REPEATABLE.build()Build a new command flag instancewithAliases(@NonNull String... aliases) Create a new builder instance using the given flag aliases.withAliases(@NonNull Collection<@NonNull String> aliases) Create a new builder instance using the given flag aliases.<N> @NonNull CommandFlag.Builder<C, N> withComponent(@NonNull TypedCommandComponent<C, N> component) Create a new builder instance using the given command component<N> @NonNull CommandFlag.Builder<C, N> withComponent(@NonNull CommandComponent.Builder<C, N> builder) Create a new builder instance using the given command component<N> @NonNull CommandFlag.Builder<C, N> withComponent(@NonNull ParserDescriptor<? super C, N> parserDescriptor) Create a new builder instance using the given command componentwithDescription(@NonNull Description description) Create a new builder instance using the given flag descriptionwithPermission(@NonNull String permissionString) Create a new builder instance using the given flag permissionwithPermission(@NonNull Permission permission) Create a new builder instance using the given flag permission
-
Method Details
-
withAliases
Create a new builder instance using the given flag aliases. These may at most be one character in length- Parameters:
aliases- Flag aliases- Returns:
- New builder instance
-
withAliases
@API(status=STABLE) public @NonNull CommandFlag.Builder<C,T> withAliases(@NonNull Collection<@NonNull String> aliases) Create a new builder instance using the given flag aliases. These may at most be one character in length- Parameters:
aliases- Flag aliases- Returns:
- New builder instance
-
withDescription
@API(status=STABLE) public @NonNull CommandFlag.Builder<C,T> withDescription(@NonNull Description description) Create a new builder instance using the given flag description- Parameters:
description- Flag description- Returns:
- New builder instance
-
withComponent
public <N> @NonNull CommandFlag.Builder<C,N> withComponent(@NonNull TypedCommandComponent<C, N> component) Create a new builder instance using the given command component- Type Parameters:
N- New component type- Parameters:
component- Command component- Returns:
- New builder instance
-
withComponent
public <N> @NonNull CommandFlag.Builder<C,N> withComponent(@NonNull ParserDescriptor<? super C, N> parserDescriptor) Create a new builder instance using the given command component- Type Parameters:
N- new component type- Parameters:
parserDescriptor- descriptor of the parser- Returns:
- New builder instance
-
withComponent
public <N> @NonNull CommandFlag.Builder<C,N> withComponent(@NonNull CommandComponent.Builder<C, N> builder) Create a new builder instance using the given command component- Type Parameters:
N- New component type- Parameters:
builder- Command component builder.CommandComponent.Builder.build()will be invoked.- Returns:
- New builder instance
-
withPermission
@API(status=STABLE) public @NonNull CommandFlag.Builder<C,T> withPermission(@NonNull Permission permission) Create a new builder instance using the given flag permission- Parameters:
permission- Flag permission- Returns:
- New builder instance
-
withPermission
@API(status=STABLE) public @NonNull CommandFlag.Builder<C,T> withPermission(@NonNull String permissionString) Create a new builder instance using the given flag permission- Parameters:
permissionString- Flag permission- Returns:
- New builder instance
-
asRepeatable
Marks the flag asCommandFlag.FlagMode.REPEATABLE.- Returns:
- new builder instance
-
build
Build a new command flag instance- Returns:
- Constructed instance
-