Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Move all the business logic of parsing and generating code
into maker subpackage.
Instead of functions, the maker package exports a Maker struct,
which has two exported methods: ParseSource to add a file,
and MakeInterface to create the interface.
The struct now handles the data that was previously handled
by the main package between the invocation of the two functions.
Don't use token.Pos to access source file byte slice,
this doesn't work when there are multiple files in the fileset.
Use go/printer or directly get the parsed strings from the ast nodes.
Ignore dot imports, assume they will not be needed by the
generated struct.
Throw errors when aliases conflict or a package is imported
with different aliases (#9).
Add a "Code generated by" comment per
https://golang.org/s/generatedcode
Add tests + travis.
This is a pretty big change. I've only tested this on a single project (with a few automatically generated interfaces), so I may have missed something.