Java type error in documented language processing code
According to the documentation on language processing, the following code should be used to invoke a builder:
ISpoofaxBuilder builder = ... // Get through dependency injection CancellationToken cancellationToken = new CancellationToken() ISpoofaxBuildOutput output = builder.build(input, new NullProgressReporter(), cancellationToken)
When adding the missing semicolons, this still gives a Java type error:
Type mismatch: cannot convert from IBuildOutput<ISpoofaxParseUnit,ISpoofaxAnalyzeUnit,ISpoofaxAnalyzeUnitUpdate,ISpoofaxTransformUnit<?>> to ISpoofaxBuildOutput
Of course, using the right type fixes the issue, but I would assume the heavily parametrised type should be hidden from the language user.
Submitted by Guido Wachsmuth on 14 February 2017 at 12:48
Issue Log
On 14 February 2017 at 13:07 Gabriël Konat tagged documentation
On 16 February 2017 at 11:33 Gabriël Konat tagged api
On 16 February 2017 at 11:33 Gabriël Konat commented:
I added the missing overrides to make this work in: https://github.com/metaborg/spoofax/commit/f30937aa7b6f3910aa286594ee84262f909e46a9
On 16 February 2017 at 11:33 Gabriël Konat closed this issue.
Log in to post comments