@Nonnull
	default Result<List<ASTElement>> fullParse(@Nonnull List<Token> tokens) {
		var result = roughParse(tokens);
		if (result.isOk()) {
			return concreteParse(result.get());
		} else {
			return result;
		}
	}
The full parse operation if you do not want to call both {@link #roughParse(List)} and
{@link #concreteParse(List)} individually.

@param tokens
		Tokens to parse into a series of AST elements.

@return Result wrapping fully constructed AST elements on successful parsing.
Result wrapping a list of parse errors otherwise.
recaf-core/src/main/java/software/coley/recaf/services/assembler/AssemblerPipeline.java