1 package serp.bytecode;
2
3 import java.io.*;
4
5 import serp.bytecode.visitor.*;
6
7
8
9
10
11
12
13 public class UnknownAttribute extends Attribute {
14 private byte[] _value = new byte[0];
15
16 UnknownAttribute(int nameIndex, Attributes owner) {
17 super(nameIndex, owner);
18 }
19
20 int getLength() {
21 return _value.length;
22 }
23
24
25
26
27 public byte[] getValue() {
28 return _value;
29 }
30
31
32
33
34 public void setValue(byte[] value) {
35 if (value == null)
36 value = new byte[0];
37 _value = value;
38 }
39
40 public void acceptVisit(BCVisitor visit) {
41 visit.enterUnknownAttribute(this);
42 visit.exitUnknownAttribute(this);
43 }
44
45 void read(Attribute other) {
46 setValue(((UnknownAttribute) other).getValue());
47 }
48
49 void read(DataInput in, int length) throws IOException {
50 _value = new byte[length];
51 in.readFully(_value);
52 }
53
54 void write(DataOutput out, int length) throws IOException {
55 out.write(_value);
56 }
57 }