Advertisement
Guest User

Untitled

a guest
Nov 12th, 2011
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.02 KB | None | 0 0
  1. rule {
  2. return = "std::vector<std::wstring>"
  3. name = name_or_qualified_name
  4. contents
  5. = identifier [name]
  6. C++ {
  7. std::vector<std::wstring> retval;
  8. retval.push_back(name);
  9. return retval;
  10. }
  11. | name_or_qualified_name [existing] '.' identifier [name]
  12. C++ {
  13. existing.push_back(name);
  14. return existing;
  15. }
  16. }
  17.  
  18. rule {
  19. name = namespace_contents
  20. arguments = {
  21. current_namespace = "Wide::Parser::NamespaceAST*";
  22. }
  23. contents
  24. = namespace_rule(current_namespace);
  25. }
  26.  
  27. rule {
  28. name = namespace_rule
  29. arguments = {
  30. current_namespace = "Wide::Parser::NamespaceAST*";
  31. }
  32. contents
  33. = 'namespace' identifier[namespace_name] '{'
  34. C++ {
  35. auto new_namespace = new NamespaceAST();
  36. } namespace_contents(new_namespace)* '}'
  37. C++ {
  38. current_namespace->contents[namespace_name] = new_namespace;
  39. }
  40. }
  41.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement