Check-in [a42203c959]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Decode of class pool reference.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: a42203c9593c7623c77924fa3120f937b223e8ee
User & Date: stephanie.gawroriski 2019-09-11 15:02:17
Context
2019-09-11
15:09
Add field reference. check-in: 0ca1cefb3a user: stephanie.gawroriski tags: trunk
15:02
Decode of class pool reference. check-in: a42203c959 user: stephanie.gawroriski tags: trunk
15:00
Add a NotedString which is used for the debug entry, it represents a string to be used without needing to make a string object for it. check-in: 503fab114a user: stephanie.gawroriski tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to runt/libs/tool-classfile/dev/shadowtail/classfile/mini/DualPoolEncoder.java.

9
10
11
12
13
14
15

16
17
18
19
20
21
22
...
244
245
246
247
248
249
250







251
252
253
254
255
256
257

package dev.shadowtail.classfile.mini;

import dev.shadowtail.classfile.pool.BasicPool;
import dev.shadowtail.classfile.pool.BasicPoolBuilder;
import dev.shadowtail.classfile.pool.BasicPoolEntry;
import dev.shadowtail.classfile.pool.ClassInfoPointer;

import dev.shadowtail.classfile.pool.DualClassRuntimePool;
import dev.shadowtail.classfile.pool.DualClassRuntimePoolBuilder;
import dev.shadowtail.classfile.pool.InvokeType;
import dev.shadowtail.classfile.pool.InvokedMethod;
import dev.shadowtail.classfile.pool.NotedString;
import dev.shadowtail.classfile.pool.UsedString;
import java.io.ByteArrayInputStream;
................................................................................
									entries.get(parts[0]).
									<String>value(String.class));
								break;
								
								// Class information point
							case CLASS_INFO_POINTER:
								value = new ClassInfoPointer(







									classpool.byIndex(parts[0]).
									<ClassName>value(ClassName.class));
								break;
								
								// A method which has been invoked
							case INVOKED_METHOD:
								value = new InvokedMethod(







>







 







>
>
>
>
>
>
>







9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
...
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265

package dev.shadowtail.classfile.mini;

import dev.shadowtail.classfile.pool.BasicPool;
import dev.shadowtail.classfile.pool.BasicPoolBuilder;
import dev.shadowtail.classfile.pool.BasicPoolEntry;
import dev.shadowtail.classfile.pool.ClassInfoPointer;
import dev.shadowtail.classfile.pool.ClassPool;
import dev.shadowtail.classfile.pool.DualClassRuntimePool;
import dev.shadowtail.classfile.pool.DualClassRuntimePoolBuilder;
import dev.shadowtail.classfile.pool.InvokeType;
import dev.shadowtail.classfile.pool.InvokedMethod;
import dev.shadowtail.classfile.pool.NotedString;
import dev.shadowtail.classfile.pool.UsedString;
import java.io.ByteArrayInputStream;
................................................................................
									entries.get(parts[0]).
									<String>value(String.class));
								break;
								
								// Class information point
							case CLASS_INFO_POINTER:
								value = new ClassInfoPointer(
									classpool.byIndex(parts[0]).
									<ClassName>value(ClassName.class));
								break;
								
								// Class run-time pool reference
							case CLASS_POOL:
								value = new ClassPool(
									classpool.byIndex(parts[0]).
									<ClassName>value(ClassName.class));
								break;
								
								// A method which has been invoked
							case INVOKED_METHOD:
								value = new InvokedMethod(