private static object ReadArray(ByteReader reader, JavaConstant[] constants) { // ELEMENTVALUE ARRAY LENGTH (U2) int length = reader.ReadShort(); object[] array = new object[length]; for (int i = 0; i < length; i++) { array[i] = JavaElementValue.Read(reader, constants); } return(array); }
public static object Read(ByteReader reader, JavaConstant[] constants) { // ELEMENTVALUE TAG (U1) int tag = reader.ReadByte(); switch (tag) { case '@': return(JavaElementValue.ReadAnnotationType(reader, constants)); case 'e': return(JavaElementValue.ReadEnum(reader, constants)); case '[': return(JavaElementValue.ReadArray(reader, constants)); default: return(JavaElementValue.ReadConstValue(reader, constants, tag)); } }