1 package com.github.javaparser; 2 3 import com.github.javaparser.ast.Node; 4 import com.github.javaparser.ast.NodeList; 5 6 /** 7 * Helper class for {@link GeneratedJavaParser} 8 */ 9 class RangedList<T extends Node> { 10 /* A ranged list MUST be set to a begin and end, 11 or these temporary values will leak out */ 12 TokenRange range = new TokenRange(JavaToken.INVALID, JavaToken.INVALID); 13 NodeList<T> list; 14 15 RangedList(NodeList<T> list) { 16 this.list = list; 17 } 18 19 void beginAt(JavaToken begin) { 20 range = range.withBegin(begin); 21 } 22 23 void endAt(JavaToken end) { 24 range = range.withEnd(end); 25 } 26 27 void add(T t) { 28 if (list == null) { 29 list = new NodeList<>(); 30 } 31 list.add(t); 32 } 33 } 34