/parsing/d/parser.d

http://github.com/wilkie/djehuty · D · 43 lines · 25 code · 9 blank · 9 comment · 0 complexity · b4201e29890881fffcb2976cd31a5c03 MD5 · raw file

  1. /*
  2. * parser.d
  3. *
  4. * This module will provide a parser for the D programming language.
  5. *
  6. * Author: Dave Wilkinson
  7. * Originated: February 1st, 2010
  8. *
  9. */
  10. module parsing.d.parser;
  11. import parsing.d.lexer;
  12. import parsing.d.tokens;
  13. import parsing.d.nodes;
  14. import parsing.d.moduleunit;
  15. import parsing.token;
  16. import parsing.ast;
  17. import parsing.lexer;
  18. import parsing.parser;
  19. import parsing.parseunit;
  20. import djehuty;
  21. import io.console;
  22. class DParser : Parser {
  23. this(Stream stream) {
  24. super(stream);
  25. _lexer = new DLexer(stream);
  26. }
  27. override AbstractSyntaxTree parse() {
  28. ParseUnit parseUnit = new ModuleUnit();
  29. parseUnit.lexer = _lexer;
  30. return parseUnit.parse();
  31. }
  32. private:
  33. DLexer _lexer;
  34. }