A methodLineTables táblázat bejegyzéseinek értéke a
megegyező végrehajtható egység sorának száma (a classSourceFile adat
karaktersorozatban megnevezett forrásfájlban). Például a táblázat ötödik
bejegyzése az ötödik végrehajtható egység sorának számát adja meg.
Egy példa a methodLineTables karaktersorozatra:
#51+1201#75+11,41
A karaktersorozat értelmezésének módja:
-
A kettőskereszt ("#") jelet követő számjegyek a forráskódban egy sor teljes
számát ábrázolják egy osztály számára. A példában az első metódus első végrehajtható
egysége az osztályban az 51. sorban található.
- Minden plusz ("+") jelet követő számjegy azt az értéket
képviseli, amit az előző sor számához hozzá kell adni a következő végrehajtható
egység sorának számának előállításához. A példában a plusz jelet követő
számjegyek (+1201) a másodiktól az ötödik végrehajtható egység sorának
számának kiszámításához kerülnek felhasználásra:
- 51 + 1 = a második
végrehajtható egység sorának száma: 52
- 52 + 2 = a harmadik végrehajtható egység sorának száma: 54
- 54 + 0 = a negyedik végrehajtható egység sorának száma: 54 (a forrás egy
sorában két végrehajtható egység található)
- 54 + 1 = az ötödik végrehajtható egység sorának száma: 55
- Negatív vagy kilencnél nagyobb sornövelés esetén a
végrehajtható egység teljes sor száma kerül megadásra. A példában a hatodik
végrehajtható egység a 75. sorban található, hússzal nagyobb a sorának száma az
előzőnél, ami 55 volt. Ebben az esetben a hatodik végrehajtható egység sorának
teljes száma kerül megadásra, és a relatív számítás újrakezdődik
(#75+11):
- 75 = A hatodik végrehajtható egység sorának száma
- 75 + 1 = a hetedik végrehajtható egység sorának száma: 76
- 76 + 1 = a nyolcadik végrehajtható egység sorának száma: 77
- A vessző (",") egy metódus végét és a következő kezdetét
jelöli.
A vesszőt követő számjegyek és szimbólumok az előbbiek alapján kerülnek
értelmezésre. A példában a második metódus első végrehajtható egységének
sorának száma csak néggyel nagyobb az előző metódus utolsó sorának számától,
így a vessző után relatív számítás következik (,41):
- 77 + 4 = a
második metódus első végrehajtható egységének sorának száma: 81
- 81 + 1 = a második metódus második végrehajtható egységének sorának
száma: 82
Megjegyzés: Nem minden
végrehajtható egységhez tartoznak forrás információk. Némelyiket a fordító
hozza létre a Java nyelv szemantikájának megvalósításához (pl.:
kivételkezelés, inicializálás vagy szinkronizálás). Ezen előállított
végrehajtható egységek sorának teljes száma nullaként fog megjelenni a
methodLineTables karaktersorozatban. A sor nulla értékű teljes száma azt jelenti, hogy a sorok
számához nem érhetők el információk. Ha egy teljes metódushoz nem tartoznak
forrás információk, akkor ez egyetlen végrehajtható egységként jelenik meg,
amely sorának száma nulla.
További példák a methodLineTables karaktersorozatokkal és azok jelentésével
kapcsolatosan:
methodLineTables karaktersorozat |
Jelentés |
+5 |
Ha az első metódus első végrehajtható
egységének sorának száma tíznél kisebb, akkor az egész karaktersorozat egy
plusz jellel kezdődik a növelési sorozat nulláról indításával. Ezen példában az
első metódus első végrehajtható egysége az 5. sorban kezdődik. |
+0 |
Ha az első metódushoz nem
tartoznak forrás információk, akkor a karaktersorozat a +0
jelöléssel kezdődik. Az ilyen metódusra vonatkozó executableUnit vizsgáló
töredék csak egyszer kerül beszúrásra a metódus elején. |
...#437,#457+123... |
Ha egy metódus első végrehajtható egysége
több, mint kilenc sorral az előző metódus utolsó végrehajtható egysége után
kezdődik, akkor a minta egy vessző, egy kettőskereszt és az új metódus első
végrehajtható egységének sorának száma. Ezen részleges példában az új metódus
első végrehajtható egysége az előző metódus utolsó végrehajtható egysége után
20 sorral kezdődik. |
...#437,+2... |
Lehetséges egy metódus utolsó végrehajtható
egysége esetén a "#" jelölés, ha a következő metódus első végrehajtható egysége
kis távolságban van. Ezen részleges példában egy metódus utolsó végrehajtható
egysége a 437., a következő metódus első végrehajtható egysége a 439. sorban
kezdődik. |