This website requires JavaScript.
45966d1d1e
Changed custom suggestions to be nullable
Nathan Adams
2017-11-13 14:38:38 +0100
1ce9894c07
Added methods for getting path by node & nodes by path
Nathan Adams
2017-11-13 12:40:05 +0100
6b57d5f260
Expose information about the built-in arguments (bounds or type)
Nathan Adams
2017-11-13 11:15:04 +0100
fdff548a64
Forked commands should execute FIFO
Nathan Adams
2017-11-10 10:45:49 +0100
1369eaf2c3
Allow mixed case literal suggestions
Nathan Adams
2017-11-09 12:25:29 +0100
b716f9a873
Executing forked commands should return the number of successes, and not fail on any errors
Nathan Adams
2017-11-09 12:11:08 +0100
e97dd6bb79
Allow consuming of command results
Nathan Adams
2017-11-08 16:05:38 +0100
be0090873b
Allow overriding of suggestion providers per argument
Nathan Adams
2017-11-08 15:17:59 +0100
4f7c6d4e32
Made suggestions async
Nathan Adams
2017-11-08 14:50:25 +0100
b48dbe7916
Reimplemented command suggestions
Nathan Adams
2017-11-08 12:43:07 +0100
4d91bc6e7e
Treat any trailing space as "a yet to be finished command" instead of a maybe valid argument
Nathan Adams
2017-11-08 09:35:27 +0100
6e61fef225
Fixed commands with a trailing whitespace
Nathan Adams
2017-11-08 09:20:48 +0100
2c39925cda
Version 0.1.1
Nathan Adams
2017-11-07 15:54:33 +0100
8ae247bb6a
Don't store string arguments in contexts, ranges are more useful
Nathan Adams
2017-11-07 15:53:12 +0100
e342380600
Removed concept of argument suffix
Nathan Adams
2017-11-06 16:17:21 +0100
c746232ffc
Removed : int
(for example) in syntax.
Nathan Adams
2017-11-06 16:14:29 +0100
59a27953be
If a redirect returned nothing, return nothing.
Nathan Adams
2017-11-06 15:02:37 +0100
43e18f6a04
Allow redirect modifiers to throw exceptions
Nathan Adams
2017-11-06 14:45:54 +0100
9d65991ae8
Fixed competing overloads not allowing other ones to try to parse
Nathan Adams
2017-10-31 17:03:52 +0100
e85f4a9f11
Added optional boolean to get all command usage text
Nathan Adams
2017-10-13 09:34:45 +0200
08b183588f
Renamed CommandException -> CommandSyntaxException
Nathan Adams
2017-08-21 14:44:22 +0200
f287b89ee4
Readded exceptions without context, useful for exceptions during execution
Nathan Adams
2017-08-15 14:36:27 +0200
02f3a68ac0
Commands can throw exceptions
Nathan Adams
2017-08-15 09:35:09 +0200
9d8ccfb1e2
Fixed redirect modifiers not always being ran
Nathan Adams
2017-08-10 15:30:14 +0200
b0f69ebc47
Allow redirects to modify context, supporting forks in the command chain
Nathan Adams
2017-08-10 14:32:01 +0200
c282b26b60
Removed unneeded field from contextbuilder
Nathan Adams
2017-08-10 13:22:58 +0200
9c5af32afa
When we redirect, add initial node to the context
Nathan Adams
2017-08-10 09:03:10 +0200
78f4187908
Fixed from failing prematurely on partially matching literals
Nathan Adams
2017-08-07 09:24:14 +0200
2d7644dce3
Change usage text of redirects based on if it's root or not
Nathan Adams
2017-08-03 12:41:19 +0200
a67b4b51b0
Added float argument
Nathan Adams
2017-08-01 09:38:14 +0200
4b9170fd7f
Added a redirect option on nodes
Nathan Adams
2017-07-31 14:14:24 +0200
7f490f0a8b
A context's arguments should be sorted
Nathan Adams
2017-07-27 14:06:58 +0200
42631c29b7
Store start & end on parsed arguments
Nathan Adams
2017-07-27 11:07:09 +0200
152c0b09d1
Removed unused copy methods, no longer needed
Nathan Adams
2017-07-27 11:00:35 +0200
5181559f46
Made all exceptions throw with context
Nathan Adams
2017-07-27 09:58:14 +0200
9276feddd4
Ported new methods to StringReader from nbt parsing
Nathan Adams
2017-07-26 14:01:43 +0200
dcda383dc9
Allow disabling of command exception stack trace
Nathan Adams
2017-07-26 14:01:29 +0200
d0be598676
Code cleanup
Nathan Adams
2017-07-25 16:07:03 +0200
3bb1a888fb
Made node parsing also use readers
Nathan Adams
2017-07-25 16:00:38 +0200
d2a5eeedc5
Fixed up tests to use the new reader in type parsing
Nathan Adams
2017-07-25 15:31:14 +0200
9e481e3f24
Started moving towards passing around one big reader, instead of lots of strings
Nathan Adams
2017-07-25 15:07:58 +0200
a7674e984d
Source is no longer required to get an argument result
Nathan Adams
2017-07-25 13:19:36 +0200
ce5eb700b8
Removed DynamicParsedArgument, undoing previous work to split it up.
Nathan Adams
2017-07-25 13:18:22 +0200
8e53d8ff4f
Added usage text to string
Nathan Adams
2017-07-20 13:59:54 +0200
74f7c0e6b0
Added bool argument
Nathan Adams
2017-07-20 13:57:48 +0200
eaf4c6175d
Keep nodes sorted alphabetically for niceness
Nathan Adams
2017-07-20 13:32:12 +0200
daea2d76d7
Fixed suffix with empty input
Nathan Adams
2017-07-20 13:08:12 +0200
e82d657d26
Added suffix to integer, and pass context around some more
Nathan Adams
2017-07-20 13:01:22 +0200
13a7d53bdc
Renamed CommandArgumentType -> ArgumentType
Nathan Adams
2017-07-10 12:04:52 +0200
c1a159f75a
Pass in source to evaluations of arguments
Nathan Adams
2017-07-04 15:12:31 +0200
4af7274892
Fixed how optional commands work - we don't find an earlier command in the tree anymore.
Nathan Adams
2017-06-30 09:17:07 +0200
9a3f987c97
Overhauled usage generation
Nathan Adams
2017-06-29 15:15:00 +0200
4337a9645e
Added new StringArgumentType
Nathan Adams
2017-06-29 10:31:14 +0200
60c5770f5e
Exposed parse results a little easier. Make no distinction between "no permission" and "no command".
Nathan Adams
2017-06-28 16:34:52 +0200
523e9d0236
Allow turning nodes back into builders without children
Nathan Adams
2017-06-28 15:09:19 +0200
716e8f3f16
Two nodes at the same position that can both parse is no longer supported. Separated ERROR_UNKNOWN_COMMAND into ERROR_UNKNOWN_ARGUMENT
Nathan Adams
2017-06-28 13:16:02 +0200
fbf3546f18
Fixed crash executing ""
Nathan Adams
2017-06-28 12:22:35 +0200
e9a930c3b5
Added/optimized getInput methods to both builder and context
Nathan Adams
2017-06-28 11:15:30 +0200
7d4dcc3e4b
Allow changing of a source after creation of a contextbuilder
Nathan Adams
2017-06-28 11:08:26 +0200
e6b78a5f2a
Allow access to an unbuilt context, for caching parsed functions
Nathan Adams
2017-06-28 11:07:42 +0200
bafe8e6b56
Made getArgument return the actual value, not a container object
Nathan Adams
2017-06-28 10:55:56 +0200
8e3b29d22e
Split ParsedArgument into fixed or dynamic, added copy methods for caching contexts
Nathan Adams
2017-06-28 10:54:10 +0200
3946b084a0
Commands should return an int success count
Nathan Adams
2017-06-27 15:34:42 +0200
73015f87d2
Typo!
Nathan Adams
2017-06-27 13:08:39 +0200
6575257e0d
Implemented permissions (predicate on each node)
Nathan Adams
2017-06-26 14:49:55 +0200
014caa2905
Pass S (source type, was sometimes T) through to all nodes, so Command can have source type
Nathan Adams
2017-06-26 09:44:29 +0200
f0f038b57a
Quote string replacements to avoid pattern issues
Nathan Adams
2017-06-22 09:35:33 +0200
7ac8998e5a
Removed dependency on lang3
Nathan Adams
2017-06-22 09:34:30 +0200
f372eb3b98
Added support for suggestions tabcompletions of a command input
Nathan Adams
2017-06-22 09:05:16 +0200
eba88b2773
More cleanup
Nathan Adams
2017-06-21 14:36:17 +0200
c2141ce38b
Code cleanup
Nathan Adams
2017-06-21 14:29:26 +0200
400657b472
Removed findbugs jsr
Nathan Adams
2017-06-21 14:25:36 +0200
e12ab0b6d8
Updated libraries
Nathan Adams
2017-06-21 14:21:15 +0200
a4dca40ffb
Added gradle wrapper and updated to gradle 4
Nathan Adams
2017-06-21 14:11:41 +0200
b6b684efc7
Extracted some hardcoded strings to constants
Nathan Adams
2014-10-13 12:18:42 +0200
91559191b6
Added simple usage generation
Nathan Adams
2014-10-09 12:15:54 +0200
b3703db535
Changed tests to ensure exceptions are of right type & right details
Nathan Adams
2014-10-03 12:45:19 +0200
ef4199e824
Renamed project to 'Brigadier'
Nathan Adams
2014-10-02 13:00:29 +0200
8c5338a6bd
Start of new exception system
Nathan Adams
2014-10-02 12:56:51 +0200
29f99e8710
Implemented equals for CommandContext and ParsedArgument
Nathan Adams
2014-09-29 12:35:07 +0200
2114f086cb
Added a 'source' for commands that may be passed around in the context
Nathan Adams
2014-09-29 12:18:40 +0200
6a8d067cf9
Always try every route to find a matching command
Nathan Adams
2014-09-29 11:56:24 +0200
4b6abf4084
Verify command merging in the dispatcher
Nathan Adams
2014-09-26 10:39:50 +0200
82b576e38c
Implemented merging of CommandNode children
Nathan Adams
2014-09-25 16:45:56 +0200
d8c9e15a1c
Made ArgumentBuilders use a RootCommandNode to hold their arguments
Nathan Adams
2014-09-25 16:36:45 +0200
5760f94009
Add equality checking to each command node
Nathan Adams
2014-09-25 16:34:44 +0200
f91bc15e19
Added a nice toString to IntegerArgumentType
Nathan Adams
2014-09-25 13:25:29 +0200
fb92c2f3c8
Added & tested equals() and hashCode() in IntegerArgumentType
Nathan Adams
2014-09-25 13:18:11 +0200
5136e3d103
Moved tests to correct location
Nathan Adams
2014-09-25 13:11:05 +0200
78b9216eb4
Extracted " " into a constant for separating arguments
Nathan Adams
2014-09-25 10:38:59 +0200
085f5b3d98
Added testParseSimilar testcase to LiteralCommandNode
Nathan Adams
2014-09-25 10:32:15 +0200
d678a5cb21
Changed how parsing is done, performed by dispatcher and can now look as deep as needed
Nathan Adams
2014-09-24 17:12:06 +0200
8da6087618
Changed the Runnable to a Command
Nathan Adams
2014-09-24 14:05:12 +0200
81ed5f0521
Moved CommandArgumentParseResult to its own class
Nathan Adams
2014-09-24 13:53:23 +0200
20357723df
Added command context and the ability to query arguments from it
Nathan Adams
2014-09-24 13:49:00 +0200
d13587a4df
Made every CommandNode support an executor
Nathan Adams
2014-09-24 12:04:33 +0200
3ef22ef317
Renamed CommandBuilder to LiteralArgumentBuilder
Nathan Adams
2014-09-24 11:57:12 +0200
9585aaf0b3
Added ArgumentValidationException as separate from illegal syntax
Nathan Adams
2014-09-24 11:30:13 +0200
0a71730bdc
Test for invalid child nodes
Nathan Adams
2014-09-22 15:34:15 +0200
397ab17e64
When parsing nodes, return the deepest node we went into
Nathan Adams
2014-09-22 15:20:57 +0200