/src/org/ooc/frontend/model/TypeParam.java

http://github.com/nddrylliog/ooc · Java · 54 lines · 40 code · 14 blank · 0 comment · 0 complexity · 96ec393ba829177934b5a27b80ffbe7f MD5 · raw file

  1. package org.ooc.frontend.model;
  2. import java.io.IOException;
  3. import org.ooc.frontend.Visitor;
  4. import org.ooc.frontend.model.tokens.Token;
  5. public class TypeParam extends TypeDecl {
  6. private Type type;
  7. private Argument argument;
  8. private boolean isGhost = false;
  9. public TypeParam(String name, Token startToken) {
  10. super(name, null, null, startToken);
  11. type = new Type("Class", Token.defaultToken);
  12. argument = new RegularArgument(type, name, startToken);
  13. }
  14. @Override
  15. public boolean replace(Node oldie, Node kiddo) {
  16. return false;
  17. }
  18. @Override
  19. public Type getType() {
  20. return type;
  21. }
  22. public Argument getArgument() {
  23. return argument;
  24. }
  25. public void accept(Visitor visitor) throws IOException {}
  26. @Override
  27. public void acceptChildren(Visitor visitor) throws IOException {
  28. type.acceptChildren(visitor);
  29. }
  30. @Override
  31. public boolean hasChildren() {
  32. return true;
  33. }
  34. public boolean isGhost() {
  35. return isGhost;
  36. }
  37. public void setGhost(boolean isGhost) {
  38. this.isGhost = isGhost;
  39. }
  40. }