code: public Template parse() throws IOException {
          Template t = parseTemplate();
  
          if (t != null) {
              return t;
          }
  
          return new Template(new SourceInfo(0, 0, 0), null, null, false, null, null);
      }
docs: Returns a parse tree by its root node. The parse tree is generated
  from tokens read from the scanner. Any errors encountered while
  parsing are delivered by dispatching an event. Add a compile listener
  in order to capture parse errors.
  
  @return Non-null template node, even if there were errors during
  parsing.
  @see Parser#addErrorListener