public final class sun.font.CompositeFont extends sun.font.Font2D
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: sun.font.CompositeFont
super_class: sun.font.Font2D
{
private boolean[] deferredInitialisation;
descriptor: [Z
flags: (0x0002) ACC_PRIVATE
java.lang.String[] componentFileNames;
descriptor: [Ljava/lang/String;
flags: (0x0000)
java.lang.String[] componentNames;
descriptor: [Ljava/lang/String;
flags: (0x0000)
private sun.font.PhysicalFont[] components;
descriptor: [Lsun/font/PhysicalFont;
flags: (0x0002) ACC_PRIVATE
int numSlots;
descriptor: I
flags: (0x0000)
int numMetricsSlots;
descriptor: I
flags: (0x0000)
int[] exclusionRanges;
descriptor: [I
flags: (0x0000)
int[] maxIndices;
descriptor: [I
flags: (0x0000)
int numGlyphs;
descriptor: I
flags: (0x0000)
int localeSlot;
descriptor: I
flags: (0x0000)
boolean isStdComposite;
descriptor: Z
flags: (0x0000)
public void <init>(java.lang.String, java.lang.String[], java.lang.String[], int, int[], int[], boolean, sun.font.SunFontManager);
descriptor: (Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I[I[IZLsun/font/SunFontManager;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=11, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 0
invokespecial sun.font.Font2D.<init>:()V
1: aload 0
iconst_0
putfield sun.font.CompositeFont.numGlyphs:I
2: aload 0
iconst_m1
putfield sun.font.CompositeFont.localeSlot:I
3: aload 0
iconst_1
putfield sun.font.CompositeFont.isStdComposite:Z
4: aload 0
new sun.font.Font2DHandle
dup
aload 0
invokespecial sun.font.Font2DHandle.<init>:(Lsun/font/Font2D;)V
putfield sun.font.CompositeFont.handle:Lsun/font/Font2DHandle;
5: aload 0
aload 1
putfield sun.font.CompositeFont.fullName:Ljava/lang/String;
6: aload 0
aload 2
putfield sun.font.CompositeFont.componentFileNames:[Ljava/lang/String;
7: aload 0
aload 3
putfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
8: aload 3
ifnonnull 11
9: aload 0
aload 0
getfield sun.font.CompositeFont.componentFileNames:[Ljava/lang/String;
arraylength
putfield sun.font.CompositeFont.numSlots:I
10: goto 12
11: StackMap locals: sun.font.CompositeFont java.lang.String java.lang.String[] java.lang.String[] int int[] int[] int sun.font.SunFontManager
StackMap stack:
aload 0
aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
arraylength
putfield sun.font.CompositeFont.numSlots:I
12: StackMap locals:
StackMap stack:
aload 0
iload 4
putfield sun.font.CompositeFont.numMetricsSlots:I
13: aload 0
aload 5
putfield sun.font.CompositeFont.exclusionRanges:[I
14: aload 0
aload 6
putfield sun.font.CompositeFont.maxIndices:[I
15: aload 8
invokevirtual sun.font.SunFontManager.getEUDCFont:()Lsun/font/TrueTypeFont;
ifnull 38
16: aload 0
dup
getfield sun.font.CompositeFont.numSlots:I
iconst_1
iadd
putfield sun.font.CompositeFont.numSlots:I
17: aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
ifnull 23
18: aload 0
aload 0
getfield sun.font.CompositeFont.numSlots:I
anewarray java.lang.String
putfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
19: aload 3
iconst_0
aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
iconst_0
aload 0
getfield sun.font.CompositeFont.numSlots:I
iconst_1
isub
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
20: aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
aload 0
getfield sun.font.CompositeFont.numSlots:I
iconst_1
isub
21: aload 8
invokevirtual sun.font.SunFontManager.getEUDCFont:()Lsun/font/TrueTypeFont;
aconst_null
invokevirtual sun.font.TrueTypeFont.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
22: aastore
23: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.CompositeFont.componentFileNames:[Ljava/lang/String;
ifnull 28
24: aload 0
aload 0
getfield sun.font.CompositeFont.numSlots:I
anewarray java.lang.String
putfield sun.font.CompositeFont.componentFileNames:[Ljava/lang/String;
25: aload 2
iconst_0
26: aload 0
getfield sun.font.CompositeFont.componentFileNames:[Ljava/lang/String;
iconst_0
aload 0
getfield sun.font.CompositeFont.numSlots:I
iconst_1
isub
27: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
28: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.font.CompositeFont.numSlots:I
anewarray sun.font.PhysicalFont
putfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
29: aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
aload 0
getfield sun.font.CompositeFont.numSlots:I
iconst_1
isub
aload 8
invokevirtual sun.font.SunFontManager.getEUDCFont:()Lsun/font/TrueTypeFont;
aastore
30: aload 0
aload 0
getfield sun.font.CompositeFont.numSlots:I
newarray 4
putfield sun.font.CompositeFont.deferredInitialisation:[Z
31: iload 7
ifeq 46
32: iconst_0
istore 9
start local 9 33: goto 36
34: StackMap locals: int
StackMap stack:
aload 0
getfield sun.font.CompositeFont.deferredInitialisation:[Z
iload 9
iconst_1
bastore
35: iinc 9 1
StackMap locals:
StackMap stack:
36: iload 9
aload 0
getfield sun.font.CompositeFont.numSlots:I
iconst_1
isub
if_icmplt 34
end local 9 37: goto 46
38: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.font.CompositeFont.numSlots:I
anewarray sun.font.PhysicalFont
putfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
39: aload 0
aload 0
getfield sun.font.CompositeFont.numSlots:I
newarray 4
putfield sun.font.CompositeFont.deferredInitialisation:[Z
40: iload 7
ifeq 46
41: iconst_0
istore 9
start local 9 42: goto 45
43: StackMap locals: int
StackMap stack:
aload 0
getfield sun.font.CompositeFont.deferredInitialisation:[Z
iload 9
iconst_1
bastore
44: iinc 9 1
StackMap locals:
StackMap stack:
45: iload 9
aload 0
getfield sun.font.CompositeFont.numSlots:I
if_icmplt 43
end local 9 46: StackMap locals:
StackMap stack:
aload 0
iconst_2
putfield sun.font.CompositeFont.fontRank:I
47: aload 0
getfield sun.font.CompositeFont.fullName:Ljava/lang/String;
bipush 46
invokevirtual java.lang.String.indexOf:(I)I
istore 9
start local 9 48: iload 9
ifle 64
49: aload 0
aload 0
getfield sun.font.CompositeFont.fullName:Ljava/lang/String;
iconst_0
iload 9
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
putfield sun.font.CompositeFont.familyName:Ljava/lang/String;
50: iload 9
iconst_1
iadd
aload 0
getfield sun.font.CompositeFont.fullName:Ljava/lang/String;
invokevirtual java.lang.String.length:()I
if_icmpge 65
51: aload 0
getfield sun.font.CompositeFont.fullName:Ljava/lang/String;
iload 9
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 10
start local 10 52: ldc "plain"
aload 10
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 55
53: aload 0
iconst_0
putfield sun.font.CompositeFont.style:I
54: goto 65
StackMap locals: int java.lang.String
StackMap stack:
55: ldc "bold"
aload 10
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 58
56: aload 0
iconst_1
putfield sun.font.CompositeFont.style:I
57: goto 65
StackMap locals:
StackMap stack:
58: ldc "italic"
aload 10
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 61
59: aload 0
iconst_2
putfield sun.font.CompositeFont.style:I
60: goto 65
StackMap locals:
StackMap stack:
61: ldc "bolditalic"
aload 10
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 65
62: aload 0
iconst_3
putfield sun.font.CompositeFont.style:I
end local 10 63: goto 65
64: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.font.CompositeFont.fullName:Ljava/lang/String;
putfield sun.font.CompositeFont.familyName:Ljava/lang/String;
65: StackMap locals:
StackMap stack:
return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 66 0 this Lsun/font/CompositeFont;
0 66 1 name Ljava/lang/String;
0 66 2 compFileNames [Ljava/lang/String;
0 66 3 compNames [Ljava/lang/String;
0 66 4 metricsSlotCnt I
0 66 5 exclRanges [I
0 66 6 maxIndexes [I
0 66 7 defer Z
0 66 8 fm Lsun/font/SunFontManager;
33 37 9 i I
42 46 9 i I
48 66 9 index I
52 63 10 styleStr Ljava/lang/String;
MethodParameters:
Name Flags
name
compFileNames
compNames
metricsSlotCnt
exclRanges
maxIndexes
defer
fm
void <init>(sun.font.PhysicalFont, sun.font.CompositeFont);
descriptor: (Lsun/font/PhysicalFont;Lsun/font/CompositeFont;)V
flags: (0x0000)
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial sun.font.Font2D.<init>:()V
1: aload 0
iconst_0
putfield sun.font.CompositeFont.numGlyphs:I
2: aload 0
iconst_m1
putfield sun.font.CompositeFont.localeSlot:I
3: aload 0
iconst_1
putfield sun.font.CompositeFont.isStdComposite:Z
4: aload 0
iconst_0
putfield sun.font.CompositeFont.isStdComposite:Z
5: aload 0
new sun.font.Font2DHandle
dup
aload 0
invokespecial sun.font.Font2DHandle.<init>:(Lsun/font/Font2D;)V
putfield sun.font.CompositeFont.handle:Lsun/font/Font2DHandle;
6: aload 0
aload 1
getfield sun.font.PhysicalFont.fullName:Ljava/lang/String;
putfield sun.font.CompositeFont.fullName:Ljava/lang/String;
7: aload 0
aload 1
getfield sun.font.PhysicalFont.familyName:Ljava/lang/String;
putfield sun.font.CompositeFont.familyName:Ljava/lang/String;
8: aload 0
aload 1
getfield sun.font.PhysicalFont.style:I
putfield sun.font.CompositeFont.style:I
9: aload 0
iconst_1
putfield sun.font.CompositeFont.numMetricsSlots:I
10: aload 0
aload 2
getfield sun.font.CompositeFont.numSlots:I
iconst_1
iadd
putfield sun.font.CompositeFont.numSlots:I
11: invokestatic sun.font.FontManagerFactory.getInstance:()Lsun/font/FontManager;
dup
astore 3
monitorenter
12: aload 0
aload 0
getfield sun.font.CompositeFont.numSlots:I
anewarray sun.font.PhysicalFont
putfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
13: aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
iconst_0
aload 1
aastore
14: aload 2
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
iconst_0
15: aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
iconst_1
aload 2
getfield sun.font.CompositeFont.numSlots:I
16: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
17: aload 2
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
ifnull 23
18: aload 0
aload 0
getfield sun.font.CompositeFont.numSlots:I
anewarray java.lang.String
putfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
19: aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
iconst_0
aload 1
getfield sun.font.PhysicalFont.fullName:Ljava/lang/String;
aastore
20: aload 2
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
iconst_0
21: aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
iconst_1
aload 2
getfield sun.font.CompositeFont.numSlots:I
22: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
23: StackMap locals: sun.font.CompositeFont sun.font.PhysicalFont sun.font.CompositeFont sun.font.FontManager
StackMap stack:
aload 2
getfield sun.font.CompositeFont.componentFileNames:[Ljava/lang/String;
ifnull 29
24: aload 0
aload 0
getfield sun.font.CompositeFont.numSlots:I
anewarray java.lang.String
putfield sun.font.CompositeFont.componentFileNames:[Ljava/lang/String;
25: aload 0
getfield sun.font.CompositeFont.componentFileNames:[Ljava/lang/String;
iconst_0
aconst_null
aastore
26: aload 2
getfield sun.font.CompositeFont.componentFileNames:[Ljava/lang/String;
iconst_0
27: aload 0
getfield sun.font.CompositeFont.componentFileNames:[Ljava/lang/String;
iconst_1
aload 2
getfield sun.font.CompositeFont.numSlots:I
28: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
29: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.font.CompositeFont.numSlots:I
newarray 4
putfield sun.font.CompositeFont.deferredInitialisation:[Z
30: aload 0
getfield sun.font.CompositeFont.deferredInitialisation:[Z
iconst_0
iconst_0
bastore
31: aload 2
getfield sun.font.CompositeFont.deferredInitialisation:[Z
iconst_0
32: aload 0
getfield sun.font.CompositeFont.deferredInitialisation:[Z
iconst_1
aload 2
getfield sun.font.CompositeFont.numSlots:I
33: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
34: aload 3
monitorexit
35: goto 38
StackMap locals:
StackMap stack: java.lang.Throwable
36: aload 3
monitorexit
37: athrow
38: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Lsun/font/CompositeFont;
0 39 1 physFont Lsun/font/PhysicalFont;
0 39 2 compFont Lsun/font/CompositeFont;
Exception table:
from to target type
12 35 36 any
36 37 36 any
MethodParameters:
Name Flags
physFont
compFont
private void doDeferredInitialisation(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.font.CompositeFont.deferredInitialisation:[Z
iload 1
baload
ifne 2
1: return
2: StackMap locals:
StackMap stack:
invokestatic sun.font.SunFontManager.getInstance:()Lsun/font/SunFontManager;
astore 2
start local 2 3: aload 2
dup
astore 3
monitorenter
4: aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
ifnonnull 6
5: aload 0
aload 0
getfield sun.font.CompositeFont.numSlots:I
anewarray java.lang.String
putfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
6: StackMap locals: sun.font.SunFontManager sun.font.SunFontManager
StackMap stack:
aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
iload 1
aaload
ifnonnull 25
7: aload 0
getfield sun.font.CompositeFont.componentFileNames:[Ljava/lang/String;
ifnull 12
8: aload 0
getfield sun.font.CompositeFont.componentFileNames:[Ljava/lang/String;
iload 1
aaload
ifnull 12
9: aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
iload 1
10: aload 2
aload 0
getfield sun.font.CompositeFont.componentFileNames:[Ljava/lang/String;
iload 1
aaload
invokevirtual sun.font.SunFontManager.initialiseDeferredFont:(Ljava/lang/String;)Lsun/font/PhysicalFont;
11: aastore
12: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
iload 1
aaload
ifnonnull 14
13: aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
iload 1
aload 2
invokevirtual sun.font.SunFontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
aastore
14: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
iload 1
aaload
aconst_null
invokevirtual sun.font.PhysicalFont.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
astore 4
start local 4 15: aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
iload 1
aaload
ifnonnull 18
16: aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
iload 1
aload 4
aastore
17: goto 25
StackMap locals: java.lang.String
StackMap stack:
18: aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
iload 1
aaload
aload 4
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 25
19: aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
iload 1
20: aload 2
aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
iload 1
aaload
21: aload 0
getfield sun.font.CompositeFont.style:I
22: iconst_1
23: invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
checkcast sun.font.PhysicalFont
24: aastore
end local 4 25: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.CompositeFont.deferredInitialisation:[Z
iload 1
iconst_0
bastore
26: aload 3
monitorexit
27: goto 30
StackMap locals:
StackMap stack: java.lang.Throwable
28: aload 3
monitorexit
29: athrow
30: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lsun/font/CompositeFont;
0 31 1 slot I
3 31 2 fm Lsun/font/SunFontManager;
15 25 4 name Ljava/lang/String;
Exception table:
from to target type
4 27 28 any
28 29 28 any
MethodParameters:
Name Flags
slot
void replaceComponentFont(sun.font.PhysicalFont, sun.font.PhysicalFont);
descriptor: (Lsun/font/PhysicalFont;Lsun/font/PhysicalFont;)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
ifnonnull 2
1: return
2: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 3: goto 9
4: StackMap locals: int
StackMap stack:
aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
iload 3
aaload
aload 1
if_acmpne 8
5: aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
iload 3
aload 2
aastore
6: aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
ifnull 8
7: aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
iload 3
aload 2
aconst_null
invokevirtual sun.font.PhysicalFont.getFontName:(Ljava/util/Locale;)Ljava/lang/String;
aastore
8: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
9: iload 3
aload 0
getfield sun.font.CompositeFont.numSlots:I
if_icmplt 4
end local 3 10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/font/CompositeFont;
0 11 1 oldFont Lsun/font/PhysicalFont;
0 11 2 newFont Lsun/font/PhysicalFont;
3 10 3 slot I
MethodParameters:
Name Flags
oldFont
newFont
public boolean isExcludedChar(int, int);
descriptor: (II)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.font.CompositeFont.exclusionRanges:[I
ifnull 2
aload 0
getfield sun.font.CompositeFont.maxIndices:[I
ifnull 2
1: iload 1
aload 0
getfield sun.font.CompositeFont.numMetricsSlots:I
if_icmplt 3
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
3: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 4: aload 0
getfield sun.font.CompositeFont.maxIndices:[I
iload 1
iaload
istore 4
start local 4 5: iload 1
ifle 7
6: aload 0
getfield sun.font.CompositeFont.maxIndices:[I
iload 1
iconst_1
isub
iaload
istore 3
7: StackMap locals: int int
StackMap stack:
iload 3
istore 5
start local 5 8: goto 13
9: StackMap locals: int
StackMap stack:
iload 2
aload 0
getfield sun.font.CompositeFont.exclusionRanges:[I
iload 5
iaload
if_icmplt 12
10: iload 2
aload 0
getfield sun.font.CompositeFont.exclusionRanges:[I
iload 5
iconst_1
iadd
iaload
if_icmpgt 12
11: iconst_1
ireturn
12: StackMap locals:
StackMap stack:
iinc 5 2
13: StackMap locals:
StackMap stack:
iload 4
iload 5
if_icmpgt 9
14: iconst_0
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lsun/font/CompositeFont;
0 15 1 slot I
0 15 2 charcode I
4 15 3 minIndex I
5 15 4 maxIndex I
8 15 5 curIndex I
MethodParameters:
Name Flags
slot
charcode
public void getStyleMetrics(float, float[], int);
descriptor: (F[FI)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iconst_0
invokevirtual sun.font.CompositeFont.getSlotFont:(I)Lsun/font/PhysicalFont;
astore 4
start local 4 1: aload 4
ifnonnull 4
2: aload 0
fload 1
aload 2
iload 3
invokespecial sun.font.Font2D.getStyleMetrics:(F[FI)V
3: goto 5
4: StackMap locals: sun.font.PhysicalFont
StackMap stack:
aload 4
fload 1
aload 2
iload 3
invokevirtual sun.font.PhysicalFont.getStyleMetrics:(F[FI)V
5: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/font/CompositeFont;
0 6 1 pointSize F
0 6 2 metrics [F
0 6 3 offset I
1 6 4 font Lsun/font/PhysicalFont;
MethodParameters:
Name Flags
pointSize
metrics
offset
public int getNumSlots();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.font.CompositeFont.numSlots:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/CompositeFont;
public sun.font.PhysicalFont getSlotFont(int);
descriptor: (I)Lsun/font/PhysicalFont;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.font.CompositeFont.deferredInitialisation:[Z
iload 1
baload
ifeq 2
1: aload 0
iload 1
invokevirtual sun.font.CompositeFont.doDeferredInitialisation:(I)V
2: StackMap locals:
StackMap stack:
invokestatic sun.font.SunFontManager.getInstance:()Lsun/font/SunFontManager;
astore 2
start local 2 3: aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
iload 1
aaload
astore 3
start local 3 4: aload 3
ifnonnull 14
5: aload 2
6: aload 0
getfield sun.font.CompositeFont.componentNames:[Ljava/lang/String;
iload 1
aaload
aload 0
getfield sun.font.CompositeFont.style:I
7: iconst_1
8: invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
9: checkcast sun.font.PhysicalFont
astore 3
10: aload 0
getfield sun.font.CompositeFont.components:[Lsun/font/PhysicalFont;
iload 1
aload 3
aastore
11: goto 14
StackMap locals: sun.font.CompositeFont int sun.font.SunFontManager sun.font.PhysicalFont
StackMap stack: java.lang.ClassCastException
12: pop
13: aload 2
invokevirtual sun.font.SunFontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
astore 3
14: StackMap locals:
StackMap stack:
aload 3
15: areturn
end local 3 16: StackMap locals: sun.font.CompositeFont int sun.font.SunFontManager
StackMap stack: java.lang.Exception
pop
17: aload 2
invokevirtual sun.font.SunFontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lsun/font/CompositeFont;
0 18 1 slot I
3 18 2 fm Lsun/font/SunFontManager;
4 16 3 font Lsun/font/PhysicalFont;
Exception table:
from to target type
5 11 12 Class java.lang.ClassCastException
3 15 16 Class java.lang.Exception
MethodParameters:
Name Flags
slot
sun.font.FontStrike createStrike(sun.font.FontStrikeDesc);
descriptor: (Lsun/font/FontStrikeDesc;)Lsun/font/FontStrike;
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new sun.font.CompositeStrike
dup
aload 0
aload 1
invokespecial sun.font.CompositeStrike.<init>:(Lsun/font/CompositeFont;Lsun/font/FontStrikeDesc;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/CompositeFont;
0 1 1 desc Lsun/font/FontStrikeDesc;
MethodParameters:
Name Flags
desc
public boolean isStdComposite();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.font.CompositeFont.isStdComposite:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/CompositeFont;
protected int getValidatedGlyphCode(int);
descriptor: (I)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: iload 1
bipush 24
iushr
istore 2
start local 2 1: iload 2
aload 0
getfield sun.font.CompositeFont.numSlots:I
if_icmplt 3
2: aload 0
invokevirtual sun.font.CompositeFont.getMapper:()Lsun/font/CharToGlyphMapper;
invokevirtual sun.font.CharToGlyphMapper.getMissingGlyphCode:()I
ireturn
3: StackMap locals: int
StackMap stack:
iload 1
ldc 16777215
iand
istore 3
start local 3 4: aload 0
iload 2
invokevirtual sun.font.CompositeFont.getSlotFont:(I)Lsun/font/PhysicalFont;
astore 4
start local 4 5: aload 4
iload 3
invokevirtual sun.font.PhysicalFont.getValidatedGlyphCode:(I)I
6: aload 4
invokevirtual sun.font.PhysicalFont.getMissingGlyphCode:()I
7: if_icmpne 9
8: aload 0
invokevirtual sun.font.CompositeFont.getMapper:()Lsun/font/CharToGlyphMapper;
invokevirtual sun.font.CharToGlyphMapper.getMissingGlyphCode:()I
ireturn
9: StackMap locals: int sun.font.PhysicalFont
StackMap stack:
iload 1
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/font/CompositeFont;
0 10 1 glyphCode I
1 10 2 slot I
4 10 3 slotglyphCode I
5 10 4 slotFont Lsun/font/PhysicalFont;
MethodParameters:
Name Flags
glyphCode
public sun.font.CharToGlyphMapper getMapper();
descriptor: ()Lsun/font/CharToGlyphMapper;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.font.CompositeFont.mapper:Lsun/font/CharToGlyphMapper;
ifnonnull 2
1: aload 0
new sun.font.CompositeGlyphMapper
dup
aload 0
invokespecial sun.font.CompositeGlyphMapper.<init>:(Lsun/font/CompositeFont;)V
putfield sun.font.CompositeFont.mapper:Lsun/font/CharToGlyphMapper;
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.CompositeFont.mapper:Lsun/font/CharToGlyphMapper;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/font/CompositeFont;
public boolean hasSupplementaryChars();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 0
iload 1
invokevirtual sun.font.CompositeFont.getSlotFont:(I)Lsun/font/PhysicalFont;
invokevirtual sun.font.PhysicalFont.hasSupplementaryChars:()Z
ifeq 4
3: iconst_1
ireturn
4: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
5: iload 1
aload 0
getfield sun.font.CompositeFont.numSlots:I
if_icmplt 2
end local 1 6: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/font/CompositeFont;
1 6 1 i I
public int getNumGlyphs();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.font.CompositeFont.numGlyphs:I
ifne 2
1: aload 0
aload 0
invokevirtual sun.font.CompositeFont.getMapper:()Lsun/font/CharToGlyphMapper;
invokevirtual sun.font.CharToGlyphMapper.getNumGlyphs:()I
putfield sun.font.CompositeFont.numGlyphs:I
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.CompositeFont.numGlyphs:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/font/CompositeFont;
public int getMissingGlyphCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.font.CompositeFont.getMapper:()Lsun/font/CharToGlyphMapper;
invokevirtual sun.font.CharToGlyphMapper.getMissingGlyphCode:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/CompositeFont;
public boolean canDisplay(char);
descriptor: (C)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.font.CompositeFont.getMapper:()Lsun/font/CharToGlyphMapper;
iload 1
invokevirtual sun.font.CharToGlyphMapper.canDisplay:(C)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/CompositeFont;
0 1 1 c C
MethodParameters:
Name Flags
c
public boolean useAAForPtSize(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.font.CompositeFont.localeSlot:I
iconst_m1
if_icmpne 13
1: aload 0
getfield sun.font.CompositeFont.numMetricsSlots:I
istore 2
start local 2 2: iload 2
iconst_1
if_icmpne 4
aload 0
invokevirtual sun.font.CompositeFont.isStdComposite:()Z
ifne 4
3: aload 0
getfield sun.font.CompositeFont.numSlots:I
istore 2
4: StackMap locals: int
StackMap stack:
iconst_0
istore 3
start local 3 5: goto 10
6: StackMap locals: int
StackMap stack:
aload 0
iload 3
invokevirtual sun.font.CompositeFont.getSlotFont:(I)Lsun/font/PhysicalFont;
aconst_null
invokevirtual sun.font.PhysicalFont.supportsEncoding:(Ljava/lang/String;)Z
ifeq 9
7: aload 0
iload 3
putfield sun.font.CompositeFont.localeSlot:I
8: goto 11
9: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
10: iload 3
iload 2
if_icmplt 6
end local 3 11: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.CompositeFont.localeSlot:I
iconst_m1
if_icmpne 13
12: aload 0
iconst_0
putfield sun.font.CompositeFont.localeSlot:I
end local 2 13: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.font.CompositeFont.localeSlot:I
invokevirtual sun.font.CompositeFont.getSlotFont:(I)Lsun/font/PhysicalFont;
iload 1
invokevirtual sun.font.PhysicalFont.useAAForPtSize:(I)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/font/CompositeFont;
0 14 1 ptsize I
2 13 2 numCoreSlots I
5 11 3 slot I
MethodParameters:
Name Flags
ptsize
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: new sun.security.action.GetPropertyAction
dup
ldc "line.separator"
invokespecial sun.security.action.GetPropertyAction.<init>:(Ljava/lang/String;)V
1: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.String
astore 1
start local 1 2: ldc ""
astore 2
start local 2 3: iconst_0
istore 3
start local 3 4: goto 7
5: StackMap locals: java.lang.String java.lang.String int
StackMap stack:
new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Slot["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "]="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
iload 3
invokevirtual sun.font.CompositeFont.getSlotFont:(I)Lsun/font/PhysicalFont;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
6: iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
aload 0
getfield sun.font.CompositeFont.numSlots:I
if_icmplt 5
end local 3 8: new java.lang.StringBuilder
dup
ldc "** Composite Font: Family="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.font.CompositeFont.familyName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
9: ldc " Name="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.font.CompositeFont.fullName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " style="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.font.CompositeFont.style:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
10: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/font/CompositeFont;
2 11 1 ls Ljava/lang/String;
3 11 2 componentsStr Ljava/lang/String;
4 8 3 i I
}
SourceFile: "CompositeFont.java"