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.c...@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
>

Odpovedet emailem