Skip to content

Commit bcc6fa2

Browse files
authored
Merge pull request #33 from darvil82/dev
Version 1.4
2 parents 4b3e5fb + 3dff2d1 commit bcc6fa2

File tree

123 files changed

+615
-596
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

123 files changed

+615
-596
lines changed

.github/workflows/gradle-ci-jar.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ name: Jar
1010
on:
1111
push:
1212
branches: [ "main", "dev" ]
13-
pull_request:
14-
branches: [ "main", "dev" ]
1513

1614
permissions:
1715
contents: read

.github/workflows/gradle-ci-javadoc-jar.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ name: JavadocJar
1010
on:
1111
push:
1212
branches: [ "main", "dev" ]
13-
pull_request:
14-
branches: [ "main", "dev" ]
1513

1614
permissions:
1715
contents: read

.github/workflows/gradle-ci-tests.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ name: Tests
1010
on:
1111
push:
1212
branches: [ "main", "dev" ]
13-
pull_request:
14-
branches: [ "main", "dev" ]
1513

1614
permissions:
1715
contents: read

build.gradle.kts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ plugins {
44
}
55

66
group = "io.github.darvil82"
7-
version = "1.3"
7+
version = "1.4.0"
88
description = "A highly customizable command line argument parser."
99

1010
repositories {
@@ -13,8 +13,8 @@ repositories {
1313
}
1414

1515
dependencies {
16-
api("io.github.darvil82:utils:0.7.1")
17-
api("io.github.darvil82:terminal-text-formatter:2.2.0")
16+
api("io.github.darvil82:utils:0.8.0b")
17+
api("io.github.darvil82:terminal-text-formatter:2.3.0c")
1818

1919
implementation("org.jetbrains:annotations:24.1.0")
2020
testImplementation(platform("org.junit:junit-bom:5.9.1"))
@@ -67,4 +67,4 @@ tasks.withType<JavaCompile>().configureEach {
6767

6868
tasks.withType<Javadoc>().configureEach {
6969
options.encoding = "UTF-8"
70-
}
70+
}

src/main/java/lanat/AfterParseOptions.java renamed to src/main/java/io/github/darvil/lanat/AfterParseOptions.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
package lanat;
1+
package io.github.darvil.lanat;
22

3-
import lanat.exceptions.CommandTemplateException;
4-
import lanat.exceptions.IncompatibleCommandTemplateTypeException;
5-
import lanat.parsing.errors.ErrorCollector;
3+
import io.github.darvil.lanat.exceptions.CommandTemplateException;
4+
import io.github.darvil.lanat.exceptions.IncompatibleCommandTemplateTypeException;
5+
import io.github.darvil.lanat.parsing.errors.ErrorCollector;
6+
import io.github.darvil.utils.UtlReflection;
67
import org.jetbrains.annotations.NotNull;
78
import org.jetbrains.annotations.Nullable;
8-
import utils.UtlReflection;
99

1010
import java.lang.reflect.Array;
1111
import java.lang.reflect.Field;
@@ -165,18 +165,18 @@ private static <T extends CommandTemplate> T into(
165165
// now handle the sub-command field accessors (if any)
166166
Stream.of(templateClass.getDeclaredClasses())
167167
.filter(c -> c.isAnnotationPresent(Command.Define.class))
168-
.forEach(cmdDef -> {
169-
var commandAccesorField = Stream.of(templateClass.getDeclaredFields())
168+
.forEach(cmdDef -> AfterParseOptions.into$handleCommandAccessor(
169+
instance,
170+
Stream.of(templateClass.getDeclaredFields())
170171
.filter(f -> f.isAnnotationPresent(CommandTemplate.CommandAccessor.class))
171172
.filter(f -> f.getType() == cmdDef)
172173
.findFirst()
173174
.orElseThrow(() -> new CommandTemplateException(
174175
"The class '" + cmdDef.getSimpleName() + "' is annotated with @Command.Define but it's "
175176
+ "enclosing class does not have a field annotated with @CommandAccessor"
176-
));
177-
178-
AfterParseOptions.into$handleCommandAccessor(instance, commandAccesorField, parseResult);
179-
});
177+
)),
178+
parseResult
179+
));
180180

181181
instance.afterInstantiation(parseResult);
182182
return instance;

src/main/java/lanat/Argument.java renamed to src/main/java/io/github/darvil/lanat/Argument.java

Lines changed: 18 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,18 @@
1-
package lanat;
2-
3-
import lanat.argumentTypes.ActionArgumentType;
4-
import lanat.exceptions.ArgumentAlreadyExistsException;
5-
import lanat.parsing.errors.handlers.ArgumentTypeError;
6-
import lanat.parsing.errors.handlers.ParseErrors;
7-
import lanat.utils.*;
8-
import lanat.utils.errors.ErrorCallbacks;
9-
import lanat.utils.errors.ErrorContainer;
10-
import lanat.utils.errors.ErrorLevel;
1+
package io.github.darvil.lanat;
2+
3+
import io.github.darvil.lanat.argtypes.ActionArgumentType;
4+
import io.github.darvil.lanat.exceptions.ArgumentAlreadyExistsException;
5+
import io.github.darvil.lanat.parsing.errors.handlers.ArgumentTypeError;
6+
import io.github.darvil.lanat.parsing.errors.handlers.ParseErrors;
7+
import io.github.darvil.lanat.utils.*;
8+
import io.github.darvil.lanat.utils.errors.ErrorCallbacks;
9+
import io.github.darvil.lanat.utils.errors.ErrorContainer;
10+
import io.github.darvil.lanat.utils.errors.ErrorLevel;
11+
import io.github.darvil.terminal.textformatter.color.Color;
12+
import io.github.darvil.utils.ModifyRecord;
13+
import io.github.darvil.utils.MultiComparator;
1114
import org.jetbrains.annotations.NotNull;
1215
import org.jetbrains.annotations.Nullable;
13-
import textFormatter.color.Color;
14-
import utils.ModifyRecord;
15-
import utils.MultiComparator;
16-
import utils.UtlString;
1716

1817
import java.lang.annotation.ElementType;
1918
import java.lang.annotation.Retention;
@@ -74,10 +73,10 @@
7473
public class Argument<Type extends ArgumentType<TInner>, TInner>
7574
implements ErrorContainer<ArgumentTypeError>,
7675
ErrorCallbacks<TInner, Argument<Type, TInner>>,
77-
Resettable,
78-
CommandUser,
79-
GroupUser,
80-
MultipleNamesAndDescription
76+
Resettable,
77+
CommandUser,
78+
GroupUser,
79+
MultipleNamesAndDescription
8180
{
8281
/**
8382
* The type of this argument. This is the subParser that will be used to parse the value/s this argument should
@@ -304,7 +303,7 @@ public void setNames(@NotNull List<@NotNull String> names) {
304303
throw new IllegalArgumentException("at least one name must be specified");
305304

306305
for (var name : names)
307-
UtlString.requireValidName(name);
306+
UtlMisc.requireValidName(name);
308307

309308
UtlMisc.requireUniqueElements(
310309
names, n -> new IllegalArgumentException("Name '" + n + "' is already used by this argument"
@@ -801,16 +800,8 @@ public enum Prefix {
801800
AT('@'),
802801
/** The percent sign (%). */
803802
PERCENT('%'),
804-
/** The caret (^). */
805-
CARET('^'),
806-
/** The exclamation mark (!). */
807-
EXCLAMATION('!'),
808803
/** The tilde (~). */
809804
TILDE('~'),
810-
/** The question mark (?). */
811-
QUESTION('?'),
812-
/** The equals sign (=). */
813-
EQUALS('='),
814805
/** The colon (:). */
815806
COLON(':'),
816807

src/main/java/lanat/ArgumentBuilder.java renamed to src/main/java/io/github/darvil/lanat/ArgumentBuilder.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
package lanat;
1+
package io.github.darvil.lanat;
22

3-
import lanat.exceptions.ArgumentTypeInferException;
4-
import lanat.exceptions.CommandTemplateException;
5-
import lanat.utils.Builder;
3+
import io.github.darvil.lanat.exceptions.ArgumentTypeInferException;
4+
import io.github.darvil.lanat.exceptions.CommandTemplateException;
5+
import io.github.darvil.lanat.utils.Builder;
6+
import io.github.darvil.terminal.textformatter.color.Color;
7+
import io.github.darvil.utils.UtlReflection;
68
import org.jetbrains.annotations.NotNull;
79
import org.jetbrains.annotations.Nullable;
8-
import textFormatter.color.Color;
9-
import utils.UtlReflection;
1010

1111
import java.lang.reflect.Field;
1212
import java.util.Arrays;

src/main/java/lanat/ArgumentParser.java renamed to src/main/java/io/github/darvil/lanat/ArgumentParser.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
package lanat;
1+
package io.github.darvil.lanat;
22

3-
import lanat.parsing.Tokenizer;
4-
import lanat.parsing.errors.ErrorCollector;
5-
import lanat.utils.UtlMisc;
3+
import io.github.darvil.lanat.parsing.Tokenizer;
4+
import io.github.darvil.lanat.parsing.errors.ErrorCollector;
5+
import io.github.darvil.lanat.utils.UtlMisc;
66
import org.jetbrains.annotations.NotNull;
77
import org.jetbrains.annotations.Nullable;
88

@@ -64,7 +64,7 @@ public ArgumentParser(@NotNull Class<? extends CommandTemplate> templateClass) {
6464
* }};
6565
* }</pre>
6666
* This method basically makes it easier to add Sub-Commands to the given {@link CommandTemplate}. It looks for
67-
* {@link lanat.CommandTemplate.CommandAccessor} annotations in the given class and adds the corresponding
67+
* {@link CommandTemplate.CommandAccessor} annotations in the given class and adds the corresponding
6868
* sub-commands to the {@link Command} object. This is done recursively.
6969
* @param templateClass The class of the {@link CommandTemplate} to use.
7070
* @return A new {@link ArgumentParser} based on the given {@link CommandTemplate}.

src/main/java/lanat/ArgumentType.java renamed to src/main/java/io/github/darvil/lanat/ArgumentType.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1-
package lanat;
2-
3-
import lanat.argumentTypes.FromParseableArgumentType;
4-
import lanat.argumentTypes.IntegerArgumentType;
5-
import lanat.argumentTypes.Parseable;
6-
import lanat.parsing.errors.handlers.ArgumentTypeError;
7-
import lanat.utils.ParentElementGetter;
8-
import lanat.utils.PostCreationInheritor;
9-
import lanat.utils.Resettable;
10-
import lanat.utils.errors.ErrorContainerImpl;
11-
import lanat.utils.errors.ErrorLevel;
1+
package io.github.darvil.lanat;
2+
3+
import io.github.darvil.lanat.argtypes.FromParseableArgumentType;
4+
import io.github.darvil.lanat.argtypes.IntegerArgumentType;
5+
import io.github.darvil.lanat.argtypes.Parseable;
6+
import io.github.darvil.lanat.parsing.errors.handlers.ArgumentTypeError;
7+
import io.github.darvil.lanat.utils.ParentElementGetter;
8+
import io.github.darvil.lanat.utils.PostCreationInheritor;
9+
import io.github.darvil.lanat.utils.Resettable;
10+
import io.github.darvil.lanat.utils.errors.ErrorContainerImpl;
11+
import io.github.darvil.lanat.utils.errors.ErrorLevel;
12+
import io.github.darvil.utils.Pair;
1213
import org.jetbrains.annotations.NotNull;
1314
import org.jetbrains.annotations.Nullable;
14-
import utils.Pair;
1515

1616
import java.util.ArrayList;
1717
import java.util.concurrent.atomic.AtomicInteger;

src/main/java/lanat/ArgumentTypeInfer.java renamed to src/main/java/io/github/darvil/lanat/ArgumentTypeInfer.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
package lanat;
1+
package io.github.darvil.lanat;
22

3-
import lanat.argumentTypes.*;
4-
import lanat.exceptions.ArgumentTypeInferException;
3+
import io.github.darvil.lanat.argtypes.*;
4+
import io.github.darvil.lanat.exceptions.ArgumentTypeInferException;
5+
import io.github.darvil.utils.Range;
6+
import io.github.darvil.utils.exceptions.DisallowedInstantiationException;
57
import org.jetbrains.annotations.NotNull;
6-
import utils.Range;
7-
import utils.exceptions.DisallowedInstantiationException;
88

99
import java.io.File;
1010
import java.util.*;

0 commit comments

Comments
 (0)