908b190da89830319e024fa1f67c83c049143b58
[sixth.git] / src / main / java / eu / svjatoslav / sixth / core / document / ListElement.java
1 package eu.svjatoslav.sixth.core.document;
2
3 import eu.svjatoslav.commons.string.tokenizer.Tokenizer;
4 import eu.svjatoslav.commons.string.tokenizer.TokenizerMatch;
5 import eu.svjatoslav.sixth.core.document.text.FormattedText;
6
7 import java.util.ArrayList;
8 import java.util.List;
9
10 import static eu.svjatoslav.sixth.core.document.Helper.TG_DOCUMENT_PROPERTY;
11
12 public class ListElement {
13     public final FormattedText name;
14     public final int level;
15     public final ListElement parent;
16     private final List<ListElement> children = new ArrayList<>();
17
18     public ListElement(FormattedText name, int level, ListElement parent){
19         this.level = level;
20         this.name = name;
21         this.parent = parent;
22     }
23
24     public void addChild(ListElement listElement){
25         children.add(listElement);
26     }
27
28     public void parse(Tokenizer tokenizer){
29         while (tokenizer.hasMoreContent()) {
30             final TokenizerMatch tm = tokenizer.getNextToken();
31
32             if (tm.isGroup(TG_DOCUMENT_PROPERTY)){
33                 System.out.println("DOCUMENT PROPERT!!!: " + tm.token);
34                 continue;
35             }
36
37             if (tm.isGroup(null)){
38                 System.out.println("    HC: " + tm.token);
39                 continue;
40             }
41
42             tokenizer.unreadToken();
43             break;
44         }
45     }
46
47
48
49 }