94 public class ElementScanner9<R, P> extends ElementScanner8<R, P> { 95 /** 96 * Constructor for concrete subclasses; uses {@code null} for the 97 * default value. 98 */ 99 protected ElementScanner9(){ 100 super(null); 101 } 102 103 /** 104 * Constructor for concrete subclasses; uses the argument for the 105 * default value. 106 * 107 * @param defaultValue the default value 108 */ 109 protected ElementScanner9(R defaultValue){ 110 super(defaultValue); 111 } 112 113 /** 114 * Visits a {@code ModuleElement} by scanning the enclosed 115 * elements. 116 * 117 * @param e the element to visit 118 * @param p a visitor-specified parameter 119 * @return the result of the scan 120 */ 121 @Override 122 public R visitModule(ModuleElement e, P p) { 123 return scan(e.getEnclosedElements(), p); // TODO: Hmmm, this might not be right 124 } 125 } | 94 public class ElementScanner9<R, P> extends ElementScanner8<R, P> { 95 /** 96 * Constructor for concrete subclasses; uses {@code null} for the 97 * default value. 98 */ 99 protected ElementScanner9(){ 100 super(null); 101 } 102 103 /** 104 * Constructor for concrete subclasses; uses the argument for the 105 * default value. 106 * 107 * @param defaultValue the default value 108 */ 109 protected ElementScanner9(R defaultValue){ 110 super(defaultValue); 111 } 112 113 /** 114 * {@inheritDoc} 115 * 116 * @implSpec This implementation scans the enclosed elements. 117 * 118 * @param e the element to visit 119 * @param p a visitor-specified parameter 120 * @return the result of the scan 121 */ 122 @Override 123 public R visitModule(ModuleElement e, P p) { 124 return scan(e.getEnclosedElements(), p); // TODO: Hmmm, this might not be right 125 } 126 } |