Aktywne Wpisy
Ciumciurumcium +1138
#famemma dla plusujących wysyłam link do lestlima

Wuja_Patryk +339
kto chce linka daje plusa. Prywatny serwer, maks 80 osób
#famemma
#famemma
Skopiuj link
Skopiuj link
Wykop.pl
Podróże
Gospodarka
Ukraina
Technologia
Motoryzacja
Sport
Rozrywka
Informacje
Ciekawostki
Mógłby mi ktoś przełożyć kod z kotlinowej javy na taką bardziej podstawową ? bo nie rozumiem tego tutaj i nie wiem jak to zaimplementować w swoim projekcie...
http://blog.lantkowiak.pl/index.php/2017/04/12/tokenizacja-kodu-zrodlowego/
Mam te klasy Java8Lexer itd ale
override fun tokenize(lexerType: LexerType, input: String): List {
val lexer = LexerFactory().getLexer(lexerType, CharStreams.fromString(input))
return lexer.allTokens.map { t -> t.type }
tego nie rozumiem ... fun ? map ? t - > t.type ?
Aktualnie mam coś takiego
Java8Lexer lexer = new Java8Lexer(new ANTLRInputStream(code));
List extends Token tokenList = new ArrayList<>();
tokenList= lexer.getAllTokens();
for(Token token : tokenList){
System.out.println("Nastepny token :" + token + "\n");
}
Ale nie zwraca mi tego co on ma na przykładzie tylko
Nastepny token :[@-1,8:12='class',<9>,1:8]
Nastepny token :[@-1,14:23='HelloWorld',<102>,1:14]
Nastepny token :[@-1,25:25='{',<59>,1:25]
Nastepny token :[@-1,33:38='public',<35>,2:4]
Nastepny token :[@-1,40:45='static',<38>,2:11]
Nastepny token :[@-1,47:50='void',<48>,2:18]
Nastepny token :[@-1,52:55='main',<102>,2:23]
Nastepny token :[@-1,56:56='(',<57>,2:27]
Nastepny token :[@-1,57:62='String',<102>,2:28]
Nastepny token :[@-1,63:63='[',<61>,2:34]
Nastepny token :[@-1,64:64=']',<62>,2:35]
Nastepny token :[@-1,66:69='args',<102>,2:37]
Nastepny token :[@-1,70:70=')',<58>,2:41]
Nastepny token :[@-1,72:72='{',<59>,2:43]
Nastepny token :[@-1,83:88='System',<102>,3:7]
Nastepny token :[@-1,89:89='.',<65>,3:13]
Nastepny token :[@-1,90:92='out',<102>,3:14]
Nastepny token :[@-1,93:93='.',<65>,3:17]
Nastepny token :[@-1,94:100='println',<102>,3:18]
Nastepny token :[@-1,101:101='(',<57>,3:25]
Nastepny token :[@-1,102:115='"Hello, World"',<55>,3:26]
Nastepny token :[@-1,116:116=')',<58>,3:40]
Nastepny token :[@-1,117:117=';',<63>,3:41]
Nastepny token :[@-1,124:124='}',<60>,4:4]
Nastepny token :[@-1,128:128='}',<60>,5:1]
a chciał bym dostać tak jak on :
tring var; VARIABLEDECLARATION
int i; VARIABLEDECLARATION
i = 3; IDENTIFIER
ASSIGN
IDENTIFIER
if (i > 2) { IFSWITCHSTATEMENTBEGIN
OPENPARENTHESIS
IDENTIFIER
CONDITION
IDENTIFIER
CLOSEPARENTHESIS
var = "more than 2"; IDENTIFIER
ASSIGN
STRING
} IFSWITCHSTATEMENTEND
else { IFSWITCHSTATEMENTBEGIN
var = "less than 2"; IDENTIFIER
ASSIGN
STRING
} IFSWITCHSTATEMENTEND
#programowanie #java #kotlin #antlr
no to dla każdego elementu wykonuje tę funkcje zapisując jej wynik, czyli nagle zamiast nap Collection, masz Collection
Tak samo jak w javie 8 masz Streamy i tam .map.