Convert SourceFile as derivable type or Interface
I planning to implement an in-line parsing, if this is already in Vala please point me where.
In-Line parsing will allows to push text and make parser/scanner to parse it.
Current implementation for Parser and Scanner requires a SourceFile object, but it can't be derived to override some methods, like instead to read from a file, it reads from:
- GLib.IOStream
- Plain Text, buffer, both directly or using a MemoryInputStream to push text to parser
This bug is related to #687 (closed) in the way we need to parse text from any source, so using IOStream should be better, including remote file opening and saving, both outside the local disk or if it pushed to a parser from a client connected to a VLS.
I see SourceFile doesn't use GLib.File and no supports InputStream as source input, one easy way to work around is to add a new method that can use a InputStream to read from, instead a file path.