Parsovanie .java zdrojakov cestou najmensieho odporu
Petr Prochazka
petrprochy na gmail.com
Středa Duben 14 13:04:42 CEST 2010
A co parsovat bytecode pres ASM <http://asm.ow2.org/>? Zda se mi to jako
nejlepsi cesta. Parsovat zdrojaky bych uvazoval az jako posledni vec.
Pokud to nelze, kouknul bych napr. do
Findbugs<http://findbugs.sourceforge.net/>nebo
Clirr <http://clirr.sourceforge.net/> jestli tam nebude neco pouzitelneho...
Petr Prochazka
2010/4/14 Dusan Zatkovsky <msk.conf na gmail.com>
> Ahoj.
>
> Maintainujem qtjambi/maven plugin a stojim pred rozhodnutim ci/a/alebo cim
> parsovat javovske zdrojaky. V principe mi ide o extrakciu textov k prekladu
> (
> pokial niekto pouziva qt/qtjambi, ide mi o nahradu toolu "lupdate" ).
>
> Priklad:
>
> public class MainClass extends SomeObject {
>
> public void someMethod() {
>
> String s1 = tr("string1");
> String s2 = QApplication.translate("MyContext", "string2");
> String s3 = QCoreApplication.translate("MyContext",
> "string3", 5);
> //String s4 = QApplication.translate("MyContext", "string4",
> 5);
> String s5 = QApplication.translate(
> "MyContext",
> "string5",
> 7);
>
> /*
> String s6 = tr("commented");
> */
>
> }
>
> class InnerClass {
> void anotherMethod() {
> String s6 = tr("string6");
> }
> }
>
> }
>
>
> Z tohoto zdrojaku potrebujem vyextrahovat parameter pre tr() a prve dva
> parametre pre QApplication.translate() a QCoreApplication.translate().
>
> Dalej v pripade tr() potrebujem vediet meno class-y ( MainClass ), pripadne
> aj
> rodicovskej classy (MainClass.InnerClass).
>
> Samozrejme k tomu spravne handlovat zakomentovane casti kodu a viacriadkove
> statementy.
>
> Vysledkom tohoto extraktu by bolo cosi podobne tomuto:
>
> MainClass,string1
> MyContext,string2
> MyContext,string3
> MyContext,string5
> MainClass.InnerClass,string6
>
>
> Mam niekolko moznosti:
> - regexp ( primitivne, nezistim meno classy )
> - nejaky vlastny tokenizer ( dlhsi cas vyvoja )
> - zneuzit cosi existujuce ... ?
>
>
> Ako by ste na to sli vy?
>
> Dik
>
> --
> Dusan
>
>
> ... tykajte mi
>
------------- dal?í ?ást ---------------
HTML p?íloha byla odstran?na...
URL: <http://amaio.cz/pipermail/konference/attachments/20100414/9f114d96/attachment.htm>
Další informace o konferenci Konference