1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 package org.kit.furia.fragment.soot.representation.internal;
26
27 import soot.*;
28 import org.kit.furia.fragment.soot.representation.*;
29 import soot.jimple.internal.*;
30 import java.util.*;
31
32 public class FNewArrayExpr extends AbstractNewArrayExpr implements Precedence, Qable, SpecialConstructContainer
33 {
34
35
36
37 private static final long serialVersionUID = 8057813930190852739L;
38
39 public FNewArrayExpr(Type type, Value size)
40 {
41 super(type, Frimp.v().newExprBox(size));
42 }
43
44 public int getPrecedence() { return 850; }
45
46
47 public Object clone()
48 {
49 return new FNewArrayExpr(getBaseType(), Frimp.cloneIfNecessary(getSize()));
50 }
51
52 public String toQ() throws Exception
53 {
54 String res = FuriaConstructDefinitions.FURIA_fnewArray + "(" + Frimp.toQ(super.getBaseType()) + "," + Frimp.toQ(super.getSize()) + ")";
55 return res;
56 }
57
58 public List getContainedSpecialConstructs() {
59 List res = new LinkedList();
60 res.add(getBaseType());
61 return res;
62 }
63 }