MCPcopy Create free account
hub / github.com/Hiro420/NikkeTools / parse

Method parse

UnLuac/src/unluac/parse/LConstantType.java:84–132  ·  view source on GitHub ↗
(ByteBuffer buffer, BHeader header)

Source from the content-addressed store, hash-verified

82class LConstantType53 extends LConstantType {
83
84 @Override
85 public LObject parse(ByteBuffer buffer, BHeader header) {
86 int type = 0xFF & buffer.get();
87 if(header.debug) {
88 System.out.print("-- parsing <constant>, type is ");
89 switch(type) {
90 case 0:
91 System.out.println("<nil>");
92 break;
93 case 1:
94 System.out.println("<boolean>");
95 break;
96 case 3:
97 System.out.println("<float>");
98 break;
99 case 0x13:
100 System.out.println("<integer>");
101 break;
102 case 4:
103 System.out.println("<short string>");
104 break;
105 case 0x14:
106 System.out.println("<long string>");
107 break;
108 default:
109 System.out.println("illegal " + type);
110 break;
111 }
112 }
113 switch(type) {
114 case 0:
115 return LNil.NIL;
116 case 1:
117 return header.bool.parse(buffer, header);
118 case 3:
119 return header.lfloat.parse(buffer, header);
120 case 0x13:
121 return header.linteger.parse(buffer, header);
122 case 4:
123 return header.string.parse(buffer, header);
124 case 0x14: {
125 LString s = header.string.parse(buffer, header);
126 s.islong = true;
127 return s;
128 }
129 default:
130 throw new IllegalStateException();
131 }
132 }
133
134 @Override
135 public void write(OutputStream out, BHeader header, LObject object) throws IOException {

Callers

nothing calls this directly

Calls 4

printMethod · 0.65
printlnMethod · 0.65
getMethod · 0.45
parseMethod · 0.45

Tested by

no test coverage detected