Home | History | Annotate | Download | only in javaparser
      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