20
Syntax Tree Data Structure used in JBVD Java Bytecode Viewer & Decompiler algorithm

The syntax tree data structure used in jbvd algorithm

Embed Size (px)

Citation preview

Page 1: The syntax tree data structure used in jbvd algorithm

Syntax Tree Data Structure used in

JBVD – Java Bytecode Viewer &

Decompiler algorithm

Page 2: The syntax tree data structure used in jbvd algorithm

Syntax tree representation rules

• Every node represents a statement or the end of a

statement

• Each node has up to two children

• The left child is represented with a green arrow

• The right child is represented with a red arrow

• If a node lacks the left or right child, or even both

of them (the value is null), then they are not

represented at all

• Each node can have more than one parents

Page 3: The syntax tree data structure used in jbvd algorithm

do while

Page 4: The syntax tree data structure used in jbvd algorithm

Nested do whiles

Page 5: The syntax tree data structure used in jbvd algorithm

while

Page 6: The syntax tree data structure used in jbvd algorithm

Nested whiles

Page 7: The syntax tree data structure used in jbvd algorithm

if

Page 8: The syntax tree data structure used in jbvd algorithm

if - else

Page 9: The syntax tree data structure used in jbvd algorithm

if – else if - else

Page 10: The syntax tree data structure used in jbvd algorithm

Nested ifs (1)

Page 11: The syntax tree data structure used in jbvd algorithm

Nested ifs (2)

Page 12: The syntax tree data structure used in jbvd algorithm

Nested ifs (3)

Page 13: The syntax tree data structure used in jbvd algorithm

Nested ifs (4)

Page 14: The syntax tree data structure used in jbvd algorithm

do while - while

Page 15: The syntax tree data structure used in jbvd algorithm

do while - if - else

Page 16: The syntax tree data structure used in jbvd algorithm

while – do while

Page 17: The syntax tree data structure used in jbvd algorithm

while - if - else

Page 18: The syntax tree data structure used in jbvd algorithm

if – else – do while

Page 19: The syntax tree data structure used in jbvd algorithm

if – else - while

Page 20: The syntax tree data structure used in jbvd algorithm

switch