1 19 20 package org.netbeans.modules.lexer.nbbridge.test.simple; 21 22 import java.util.Collection ; 23 import java.util.EnumSet ; 24 import org.netbeans.api.lexer.Language; 25 import org.netbeans.api.lexer.TokenId; 26 import org.netbeans.spi.lexer.LanguageHierarchy; 27 import org.netbeans.spi.lexer.Lexer; 28 import org.netbeans.spi.lexer.LexerRestartInfo; 29 30 35 public enum SimplePlainTokenId implements TokenId { 36 37 WORD, 38 WHITESPACE("whitespace"); 39 40 private final String primaryCategory; 41 42 SimplePlainTokenId() { 43 this(null); 44 } 45 46 SimplePlainTokenId(String primaryCategory) { 47 this.primaryCategory = primaryCategory; 48 } 49 50 public String primaryCategory() { 51 return primaryCategory; 52 } 53 54 private static final Language<SimplePlainTokenId> language = new LanguageHierarchy<SimplePlainTokenId>() { 55 56 @Override 57 protected Collection <SimplePlainTokenId> createTokenIds() { 58 return EnumSet.allOf(SimplePlainTokenId.class); 59 } 60 61 @Override 62 protected Lexer<SimplePlainTokenId> createLexer(LexerRestartInfo<SimplePlainTokenId> info) { 63 return new SimplePlainLexer(info); 64 } 65 66 @Override 67 protected String mimeType() { 68 return "text/x-simple-plain"; 69 } 70 71 }.language(); 72 73 public static Language<SimplePlainTokenId> language() { 74 return language; 75 } 76 77 78 } 79 | Popular Tags |