public abstract class android.text.Layout
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: android.text.Layout
super_class: java.lang.Object
{
public static final int BREAK_STRATEGY_SIMPLE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int BREAK_STRATEGY_HIGH_QUALITY;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int BREAK_STRATEGY_BALANCED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int HYPHENATION_FREQUENCY_NONE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int HYPHENATION_FREQUENCY_NORMAL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int HYPHENATION_FREQUENCY_FULL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final android.text.style.ParagraphStyle[] NO_PARA_SPANS;
descriptor: [Landroid/text/style/ParagraphStyle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final int JUSTIFICATION_MODE_NONE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int JUSTIFICATION_MODE_INTER_WORD;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final float DEFAULT_LINESPACING_MULTIPLIER;
descriptor: F
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1.0
public static final float DEFAULT_LINESPACING_ADDITION;
descriptor: F
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0.0
private java.lang.CharSequence mText;
descriptor: Ljava/lang/CharSequence;
flags: (0x0002) ACC_PRIVATE
private android.text.TextPaint mPaint;
descriptor: Landroid/text/TextPaint;
flags: (0x0002) ACC_PRIVATE
private android.text.TextPaint mWorkPaint;
descriptor: Landroid/text/TextPaint;
flags: (0x0002) ACC_PRIVATE
private int mWidth;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private android.text.Layout$Alignment mAlignment;
descriptor: Landroid/text/Layout$Alignment;
flags: (0x0002) ACC_PRIVATE
private float mSpacingMult;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float mSpacingAdd;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private static final android.graphics.Rect sTempRect;
descriptor: Landroid/graphics/Rect;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private boolean mSpannedText;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private android.text.TextDirectionHeuristic mTextDir;
descriptor: Landroid/text/TextDirectionHeuristic;
flags: (0x0002) ACC_PRIVATE
private android.text.SpanSet<android.text.style.LineBackgroundSpan> mLineBackgroundSpans;
descriptor: Landroid/text/SpanSet;
flags: (0x0002) ACC_PRIVATE
Signature: Landroid/text/SpanSet<Landroid/text/style/LineBackgroundSpan;>;
private int mJustificationMode;
descriptor: I
flags: (0x0002) ACC_PRIVATE
public static final int DIR_LEFT_TO_RIGHT;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int DIR_RIGHT_TO_LEFT;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -1
static final int DIR_REQUEST_LTR;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1
static final int DIR_REQUEST_RTL;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: -1
static final int DIR_REQUEST_DEFAULT_LTR;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 2
static final int DIR_REQUEST_DEFAULT_RTL;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: -2
static final int RUN_LENGTH_MASK;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 67108863
static final int RUN_LEVEL_SHIFT;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 26
static final int RUN_LEVEL_MASK;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 63
static final int RUN_RTL_FLAG;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 67108864
private static final int TAB_INCREMENT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 20
public static final android.text.Layout$Directions DIRS_ALL_LEFT_TO_RIGHT;
descriptor: Landroid/text/Layout$Directions;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
RuntimeInvisibleAnnotations:
com.android.internal.annotations.VisibleForTesting(visibility = com.android.internal.annotations.VisibleForTesting$Visibility.PACKAGE:Lcom/android/internal/annotations/VisibleForTesting$Visibility;)
public static final android.text.Layout$Directions DIRS_ALL_RIGHT_TO_LEFT;
descriptor: Landroid/text/Layout$Directions;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
RuntimeInvisibleAnnotations:
com.android.internal.annotations.VisibleForTesting(visibility = com.android.internal.annotations.VisibleForTesting$Visibility.PACKAGE:Lcom/android/internal/annotations/VisibleForTesting$Visibility;)
public static final int TEXT_SELECTION_LAYOUT_RIGHT_TO_LEFT;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int TEXT_SELECTION_LAYOUT_LEFT_TO_RIGHT;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static volatile int[] $SWITCH_TABLE$android$text$Layout$Alignment;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=0, args_size=0
0: ldc Landroid/text/style/ParagraphStyle;
invokestatic com.android.internal.util.ArrayUtils.emptyArray:(Ljava/lang/Class;)[Ljava/lang/Object;
checkcast android.text.style.ParagraphStyle[]
1: putstatic android.text.Layout.NO_PARA_SPANS:[Landroid/text/style/ParagraphStyle;
2: new android.graphics.Rect
dup
invokespecial android.graphics.Rect.<init>:()V
putstatic android.text.Layout.sTempRect:Landroid/graphics/Rect;
3: new android.text.Layout$Directions
dup
iconst_2
newarray 10
dup
iconst_1
ldc 67108863
iastore
invokespecial android.text.Layout$Directions.<init>:([I)V
4: putstatic android.text.Layout.DIRS_ALL_LEFT_TO_RIGHT:Landroid/text/Layout$Directions;
5: new android.text.Layout$Directions
dup
iconst_2
newarray 10
dup
iconst_1
ldc 134217727
iastore
invokespecial android.text.Layout$Directions.<init>:([I)V
6: putstatic android.text.Layout.DIRS_ALL_RIGHT_TO_LEFT:Landroid/text/Layout$Directions;
7: return
LocalVariableTable:
Start End Slot Name Signature
public static float getDesiredWidth(java.lang.CharSequence, android.text.TextPaint);
descriptor: (Ljava/lang/CharSequence;Landroid/text/TextPaint;)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
aload 0
invokeinterface java.lang.CharSequence.length:()I
aload 1
invokestatic android.text.Layout.getDesiredWidth:(Ljava/lang/CharSequence;IILandroid/text/TextPaint;)F
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 source Ljava/lang/CharSequence;
0 1 1 paint Landroid/text/TextPaint;
MethodParameters:
Name Flags
source
paint
public static float getDesiredWidth(java.lang.CharSequence, int, int, android.text.TextPaint);
descriptor: (Ljava/lang/CharSequence;IILandroid/text/TextPaint;)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
aload 3
getstatic android.text.TextDirectionHeuristics.FIRSTSTRONG_LTR:Landroid/text/TextDirectionHeuristic;
invokestatic android.text.Layout.getDesiredWidth:(Ljava/lang/CharSequence;IILandroid/text/TextPaint;Landroid/text/TextDirectionHeuristic;)F
freturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 source Ljava/lang/CharSequence;
0 1 1 start I
0 1 2 end I
0 1 3 paint Landroid/text/TextPaint;
MethodParameters:
Name Flags
source
start
end
paint
public static float getDesiredWidth(java.lang.CharSequence, int, int, android.text.TextPaint, android.text.TextDirectionHeuristic);
descriptor: (Ljava/lang/CharSequence;IILandroid/text/TextPaint;Landroid/text/TextDirectionHeuristic;)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 1
iload 2
aload 3
aload 4
ldc 3.4028235E38
invokestatic android.text.Layout.getDesiredWidthWithLimit:(Ljava/lang/CharSequence;IILandroid/text/TextPaint;Landroid/text/TextDirectionHeuristic;F)F
freturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 source Ljava/lang/CharSequence;
0 1 1 start I
0 1 2 end I
0 1 3 paint Landroid/text/TextPaint;
0 1 4 textDir Landroid/text/TextDirectionHeuristic;
MethodParameters:
Name Flags
source
start
end
paint
textDir
public static float getDesiredWidthWithLimit(java.lang.CharSequence, int, int, android.text.TextPaint, android.text.TextDirectionHeuristic, float);
descriptor: (Ljava/lang/CharSequence;IILandroid/text/TextPaint;Landroid/text/TextDirectionHeuristic;F)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=10, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: fconst_0
fstore 6
start local 6 1: iload 1
istore 8
start local 8 2: goto 13
3: StackMap locals: java.lang.CharSequence int int android.text.TextPaint android.text.TextDirectionHeuristic float float top int
StackMap stack:
aload 0
bipush 10
iload 8
iload 2
invokestatic android.text.TextUtils.indexOf:(Ljava/lang/CharSequence;CII)I
istore 7
start local 7 4: iload 7
ifge 6
5: iload 2
istore 7
6: StackMap locals: java.lang.CharSequence int int android.text.TextPaint android.text.TextDirectionHeuristic float float int int
StackMap stack:
aload 3
aload 0
iload 8
iload 7
aload 4
invokestatic android.text.Layout.measurePara:(Landroid/text/TextPaint;Ljava/lang/CharSequence;IILandroid/text/TextDirectionHeuristic;)F
fstore 9
start local 9 7: fload 9
fload 5
fcmpl
ifle 9
8: fload 5
freturn
9: StackMap locals: float
StackMap stack:
fload 9
fload 6
fcmpl
ifle 11
10: fload 9
fstore 6
11: StackMap locals:
StackMap stack:
iinc 7 1
end local 9 12: iload 7
istore 8
end local 7 StackMap locals: java.lang.CharSequence int int android.text.TextPaint android.text.TextDirectionHeuristic float float top int
StackMap stack:
13: iload 8
iload 2
if_icmple 3
end local 8 14: fload 6
freturn
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 15 0 source Ljava/lang/CharSequence;
0 15 1 start I
0 15 2 end I
0 15 3 paint Landroid/text/TextPaint;
0 15 4 textDir Landroid/text/TextDirectionHeuristic;
0 15 5 upperLimit F
1 15 6 need F
4 13 7 next I
2 14 8 i I
7 12 9 w F
MethodParameters:
Name Flags
source
start
end
paint
textDir
upperLimit
protected void <init>(java.lang.CharSequence, android.text.TextPaint, int, android.text.Layout$Alignment, float, float);
descriptor: (Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FF)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
aload 1
aload 2
iload 3
aload 4
getstatic android.text.TextDirectionHeuristics.FIRSTSTRONG_LTR:Landroid/text/TextDirectionHeuristic;
1: fload 5
fload 6
invokespecial android.text.Layout.<init>:(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;Landroid/text/TextDirectionHeuristic;FF)V
2: return
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 3 0 this Landroid/text/Layout;
0 3 1 text Ljava/lang/CharSequence;
0 3 2 paint Landroid/text/TextPaint;
0 3 3 width I
0 3 4 align Landroid/text/Layout$Alignment;
0 3 5 spacingMult F
0 3 6 spacingAdd F
MethodParameters:
Name Flags
text
paint
width
align
spacingMult
spacingAdd
protected void <init>(java.lang.CharSequence, android.text.TextPaint, int, android.text.Layout$Alignment, android.text.TextDirectionHeuristic, float, float);
descriptor: (Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;Landroid/text/TextDirectionHeuristic;FF)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new android.text.TextPaint
dup
invokespecial android.text.TextPaint.<init>:()V
putfield android.text.Layout.mWorkPaint:Landroid/text/TextPaint;
2: aload 0
getstatic android.text.Layout$Alignment.ALIGN_NORMAL:Landroid/text/Layout$Alignment;
putfield android.text.Layout.mAlignment:Landroid/text/Layout$Alignment;
3: iload 3
ifge 5
4: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Layout: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " < 0"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: android.text.Layout java.lang.CharSequence android.text.TextPaint int android.text.Layout$Alignment android.text.TextDirectionHeuristic float float
StackMap stack:
aload 2
ifnull 8
6: aload 2
iconst_0
putfield android.text.TextPaint.bgColor:I
7: aload 2
iconst_0
putfield android.text.TextPaint.baselineShift:I
8: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield android.text.Layout.mText:Ljava/lang/CharSequence;
9: aload 0
aload 2
putfield android.text.Layout.mPaint:Landroid/text/TextPaint;
10: aload 0
iload 3
putfield android.text.Layout.mWidth:I
11: aload 0
aload 4
putfield android.text.Layout.mAlignment:Landroid/text/Layout$Alignment;
12: aload 0
fload 6
putfield android.text.Layout.mSpacingMult:F
13: aload 0
fload 7
putfield android.text.Layout.mSpacingAdd:F
14: aload 0
aload 1
instanceof android.text.Spanned
putfield android.text.Layout.mSpannedText:Z
15: aload 0
aload 5
putfield android.text.Layout.mTextDir:Landroid/text/TextDirectionHeuristic;
16: return
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 17 0 this Landroid/text/Layout;
0 17 1 text Ljava/lang/CharSequence;
0 17 2 paint Landroid/text/TextPaint;
0 17 3 width I
0 17 4 align Landroid/text/Layout$Alignment;
0 17 5 textDir Landroid/text/TextDirectionHeuristic;
0 17 6 spacingMult F
0 17 7 spacingAdd F
MethodParameters:
Name Flags
text
paint
width
align
textDir
spacingMult
spacingAdd
protected void setJustificationMode(int);
descriptor: (I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield android.text.Layout.mJustificationMode:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/text/Layout;
0 2 1 justificationMode I
MethodParameters:
Name Flags
justificationMode
void replaceWith(java.lang.CharSequence, android.text.TextPaint, int, android.text.Layout$Alignment, float, float);
descriptor: (Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FF)V
flags: (0x0000)
Code:
stack=5, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: iload 3
ifge 2
1: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Layout: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " < 0"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield android.text.Layout.mText:Ljava/lang/CharSequence;
3: aload 0
aload 2
putfield android.text.Layout.mPaint:Landroid/text/TextPaint;
4: aload 0
iload 3
putfield android.text.Layout.mWidth:I
5: aload 0
aload 4
putfield android.text.Layout.mAlignment:Landroid/text/Layout$Alignment;
6: aload 0
fload 5
putfield android.text.Layout.mSpacingMult:F
7: aload 0
fload 6
putfield android.text.Layout.mSpacingAdd:F
8: aload 0
aload 1
instanceof android.text.Spanned
putfield android.text.Layout.mSpannedText:Z
9: return
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 10 0 this Landroid/text/Layout;
0 10 1 text Ljava/lang/CharSequence;
0 10 2 paint Landroid/text/TextPaint;
0 10 3 width I
0 10 4 align Landroid/text/Layout$Alignment;
0 10 5 spacingmult F
0 10 6 spacingadd F
MethodParameters:
Name Flags
text
paint
width
align
spacingmult
spacingadd
public void draw(android.graphics.Canvas);
descriptor: (Landroid/graphics/Canvas;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
aconst_null
iconst_0
invokevirtual android.text.Layout.draw:(Landroid/graphics/Canvas;Landroid/graphics/Path;Landroid/graphics/Paint;I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/text/Layout;
0 2 1 c Landroid/graphics/Canvas;
MethodParameters:
Name Flags
c
public void draw(android.graphics.Canvas, android.graphics.Path, android.graphics.Paint, int);
descriptor: (Landroid/graphics/Canvas;Landroid/graphics/Path;Landroid/graphics/Paint;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
invokevirtual android.text.Layout.getLineRangeForDraw:(Landroid/graphics/Canvas;)J
lstore 5
start local 5 1: lload 5
invokestatic android.text.TextUtils.unpackRangeStartFromLong:(J)I
istore 7
start local 7 2: lload 5
invokestatic android.text.TextUtils.unpackRangeEndFromLong:(J)I
istore 8
start local 8 3: iload 8
ifge 4
return
4: StackMap locals: long int int
StackMap stack:
aload 0
aload 1
aload 2
aload 3
iload 4
5: iload 7
iload 8
6: invokevirtual android.text.Layout.drawBackground:(Landroid/graphics/Canvas;Landroid/graphics/Path;Landroid/graphics/Paint;III)V
7: aload 0
aload 1
iload 7
iload 8
invokevirtual android.text.Layout.drawText:(Landroid/graphics/Canvas;II)V
8: return
end local 8 end local 7 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 9 0 this Landroid/text/Layout;
0 9 1 canvas Landroid/graphics/Canvas;
0 9 2 highlight Landroid/graphics/Path;
0 9 3 highlightPaint Landroid/graphics/Paint;
0 9 4 cursorOffsetVertical I
1 9 5 lineRange J
2 9 7 firstLine I
3 9 8 lastLine I
MethodParameters:
Name Flags
canvas
highlight
highlightPaint
cursorOffsetVertical
private boolean isJustificationRequired(int);
descriptor: (I)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield android.text.Layout.mJustificationMode:I
ifne 1
iconst_0
ireturn
1: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual android.text.Layout.getLineEnd:(I)I
istore 2
start local 2 2: iload 2
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.length:()I
if_icmpge 3
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
iload 2
iconst_1
isub
invokeinterface java.lang.CharSequence.charAt:(I)C
bipush 10
if_icmpeq 3
iconst_1
ireturn
StackMap locals: int
StackMap stack:
3: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/text/Layout;
0 4 1 lineNum I
2 4 2 lineEnd I
MethodParameters:
Name Flags
lineNum
private float getJustifyWidth(int);
descriptor: (I)F
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=15, args_size=2
start local 0 start local 1 0: aload 0
getfield android.text.Layout.mAlignment:Landroid/text/Layout$Alignment;
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: aload 0
getfield android.text.Layout.mWidth:I
istore 4
start local 4 3: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphDirection:(I)I
istore 5
start local 5 4: getstatic android.text.Layout.NO_PARA_SPANS:[Landroid/text/style/ParagraphStyle;
astore 6
start local 6 5: aload 0
getfield android.text.Layout.mSpannedText:Z
ifeq 45
6: aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
checkcast android.text.Spanned
astore 7
start local 7 7: aload 0
iload 1
invokevirtual android.text.Layout.getLineStart:(I)I
istore 8
start local 8 8: iload 8
ifeq 9
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
iload 8
iconst_1
isub
invokeinterface java.lang.CharSequence.charAt:(I)C
bipush 10
if_icmpeq 9
iconst_0
goto 10
StackMap locals: android.text.Layout int android.text.Layout$Alignment int int int android.text.style.ParagraphStyle[] android.text.Spanned int
StackMap stack:
9: iconst_1
StackMap locals:
StackMap stack: int
10: istore 9
start local 9 11: iload 9
ifeq 23
12: aload 7
iload 8
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.length:()I
13: ldc Landroid/text/style/ParagraphStyle;
14: invokeinterface android.text.Spanned.nextSpanTransition:(IILjava/lang/Class;)I
istore 10
start local 10 15: aload 7
iload 8
iload 10
ldc Landroid/text/style/ParagraphStyle;
invokestatic android.text.Layout.getParagraphSpans:(Landroid/text/Spanned;IILjava/lang/Class;)[Ljava/lang/Object;
checkcast android.text.style.ParagraphStyle[]
astore 6
16: aload 6
arraylength
iconst_1
isub
istore 11
start local 11 17: goto 22
18: StackMap locals: int int int
StackMap stack:
aload 6
iload 11
aaload
instanceof android.text.style.AlignmentSpan
ifeq 21
19: aload 6
iload 11
aaload
checkcast android.text.style.AlignmentSpan
invokeinterface android.text.style.AlignmentSpan.getAlignment:()Landroid/text/Layout$Alignment;
astore 2
20: goto 23
21: StackMap locals:
StackMap stack:
iinc 11 -1
StackMap locals:
StackMap stack:
22: iload 11
ifge 18
end local 11 end local 10 23: StackMap locals:
StackMap stack:
aload 6
arraylength
istore 10
start local 10 24: iload 9
istore 11
start local 11 25: iconst_0
istore 12
start local 12 26: goto 34
27: StackMap locals: int int int
StackMap stack:
aload 6
iload 12
aaload
instanceof android.text.style.LeadingMarginSpan$LeadingMarginSpan2
ifeq 33
28: aload 6
iload 12
aaload
checkcast android.text.style.LeadingMarginSpan$LeadingMarginSpan2
invokeinterface android.text.style.LeadingMarginSpan$LeadingMarginSpan2.getLeadingMarginLineCount:()I
istore 13
start local 13 29: aload 0
aload 7
aload 6
iload 12
aaload
invokeinterface android.text.Spanned.getSpanStart:(Ljava/lang/Object;)I
invokevirtual android.text.Layout.getLineForOffset:(I)I
istore 14
start local 14 30: iload 1
iload 14
iload 13
iadd
if_icmpge 33
31: iconst_1
istore 11
32: goto 35
end local 14 end local 13 33: StackMap locals:
StackMap stack:
iinc 12 1
StackMap locals:
StackMap stack:
34: iload 12
iload 10
if_icmplt 27
end local 12 35: StackMap locals:
StackMap stack:
iconst_0
istore 12
start local 12 36: goto 44
37: StackMap locals: int
StackMap stack:
aload 6
iload 12
aaload
instanceof android.text.style.LeadingMarginSpan
ifeq 43
38: aload 6
iload 12
aaload
checkcast android.text.style.LeadingMarginSpan
astore 13
start local 13 39: iload 5
iconst_m1
if_icmpne 42
40: iload 4
aload 13
iload 11
invokeinterface android.text.style.LeadingMarginSpan.getLeadingMargin:(Z)I
isub
istore 4
41: goto 43
42: StackMap locals: android.text.style.LeadingMarginSpan
StackMap stack:
iload 3
aload 13
iload 11
invokeinterface android.text.style.LeadingMarginSpan.getLeadingMargin:(Z)I
iadd
istore 3
end local 13 43: StackMap locals:
StackMap stack:
iinc 12 1
StackMap locals:
StackMap stack:
44: iload 12
iload 10
if_icmplt 37
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 45: StackMap locals: android.text.Layout int android.text.Layout$Alignment int int int android.text.style.ParagraphStyle[]
StackMap stack:
aload 2
getstatic android.text.Layout$Alignment.ALIGN_LEFT:Landroid/text/Layout$Alignment;
if_acmpne 50
46: iload 5
iconst_1
if_icmpne 47
getstatic android.text.Layout$Alignment.ALIGN_NORMAL:Landroid/text/Layout$Alignment;
goto 48
StackMap locals:
StackMap stack:
47: getstatic android.text.Layout$Alignment.ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
StackMap locals:
StackMap stack: android.text.Layout$Alignment
48: astore 7
start local 7 49: goto 56
end local 7 StackMap locals:
StackMap stack:
50: aload 2
getstatic android.text.Layout$Alignment.ALIGN_RIGHT:Landroid/text/Layout$Alignment;
if_acmpne 55
51: iload 5
iconst_1
if_icmpne 52
getstatic android.text.Layout$Alignment.ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
goto 53
StackMap locals:
StackMap stack:
52: getstatic android.text.Layout$Alignment.ALIGN_NORMAL:Landroid/text/Layout$Alignment;
StackMap locals:
StackMap stack: android.text.Layout$Alignment
53: astore 7
start local 7 54: goto 56
end local 7 55: StackMap locals:
StackMap stack:
aload 2
astore 7
start local 7 56: StackMap locals: android.text.Layout$Alignment
StackMap stack:
aload 7
getstatic android.text.Layout$Alignment.ALIGN_NORMAL:Landroid/text/Layout$Alignment;
if_acmpne 62
57: iload 5
iconst_1
if_icmpne 60
58: aload 0
iload 1
getstatic android.text.Layout$Alignment.ALIGN_LEFT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
istore 8
start local 8 59: goto 69
end local 8 60: StackMap locals:
StackMap stack:
aload 0
iload 1
getstatic android.text.Layout$Alignment.ALIGN_RIGHT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
ineg
istore 8
start local 8 61: goto 69
end local 8 StackMap locals:
StackMap stack:
62: aload 7
getstatic android.text.Layout$Alignment.ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
if_acmpne 68
63: iload 5
iconst_1
if_icmpne 66
64: aload 0
iload 1
getstatic android.text.Layout$Alignment.ALIGN_RIGHT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
ineg
istore 8
start local 8 65: goto 69
end local 8 66: StackMap locals:
StackMap stack:
aload 0
iload 1
getstatic android.text.Layout$Alignment.ALIGN_LEFT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
istore 8
start local 8 67: goto 69
end local 8 68: StackMap locals:
StackMap stack:
aload 0
iload 1
getstatic android.text.Layout$Alignment.ALIGN_CENTER:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
istore 8
start local 8 69: StackMap locals: int
StackMap stack:
iload 4
iload 3
isub
iload 8
isub
i2f
freturn
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 70 0 this Landroid/text/Layout;
0 70 1 lineNum I
1 70 2 paraAlign Landroid/text/Layout$Alignment;
2 70 3 left I
3 70 4 right I
4 70 5 dir I
5 70 6 spans [Landroid/text/style/ParagraphStyle;
7 45 7 sp Landroid/text/Spanned;
8 45 8 start I
11 45 9 isFirstParaLine Z
15 23 10 spanEnd I
17 23 11 n I
24 45 10 length I
25 45 11 useFirstLineMargin Z
26 35 12 n I
29 33 13 count I
30 33 14 startLine I
36 45 12 n I
39 43 13 margin Landroid/text/style/LeadingMarginSpan;
49 50 7 align Landroid/text/Layout$Alignment;
54 55 7 align Landroid/text/Layout$Alignment;
56 70 7 align Landroid/text/Layout$Alignment;
59 60 8 indentWidth I
61 62 8 indentWidth I
65 66 8 indentWidth I
67 68 8 indentWidth I
69 70 8 indentWidth I
MethodParameters:
Name Flags
lineNum
public void drawText(android.graphics.Canvas, int, int);
descriptor: (Landroid/graphics/Canvas;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=13, locals=32, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 2
invokevirtual android.text.Layout.getLineTop:(I)I
istore 4
start local 4 1: aload 0
iload 2
invokevirtual android.text.Layout.getLineStart:(I)I
istore 5
start local 5 2: getstatic android.text.Layout.NO_PARA_SPANS:[Landroid/text/style/ParagraphStyle;
astore 6
start local 6 3: iconst_0
istore 7
start local 7 4: aload 0
getfield android.text.Layout.mWorkPaint:Landroid/text/TextPaint;
astore 8
start local 8 5: aload 8
aload 0
getfield android.text.Layout.mPaint:Landroid/text/TextPaint;
invokevirtual android.text.TextPaint.set:(Landroid/text/TextPaint;)V
6: aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
astore 9
start local 9 7: aload 0
getfield android.text.Layout.mAlignment:Landroid/text/Layout$Alignment;
astore 10
start local 10 8: aconst_null
astore 11
start local 11 9: iconst_0
istore 12
start local 12 10: invokestatic android.text.TextLine.obtain:()Landroid/text/TextLine;
astore 13
start local 13 11: iload 2
istore 14
start local 14 12: goto 123
13: StackMap locals: android.text.Layout android.graphics.Canvas int int int int android.text.style.ParagraphStyle[] int android.text.TextPaint java.lang.CharSequence android.text.Layout$Alignment android.text.Layout$TabStops int android.text.TextLine int
StackMap stack:
iload 5
istore 15
start local 15 14: aload 0
iload 14
iconst_1
iadd
invokevirtual android.text.Layout.getLineStart:(I)I
istore 5
15: aload 0
iload 14
invokevirtual android.text.Layout.isJustificationRequired:(I)Z
istore 16
start local 16 16: aload 0
iload 14
iload 15
iload 5
invokevirtual android.text.Layout.getLineVisibleEnd:(III)I
istore 17
start local 17 17: aload 8
aload 0
iload 14
invokevirtual android.text.Layout.getHyphen:(I)I
invokevirtual android.text.TextPaint.setHyphenEdit:(I)V
18: iload 4
istore 18
start local 18 19: aload 0
iload 14
iconst_1
iadd
invokevirtual android.text.Layout.getLineTop:(I)I
istore 19
start local 19 20: iload 19
istore 4
21: iload 19
aload 0
iload 14
invokevirtual android.text.Layout.getLineDescent:(I)I
isub
istore 20
start local 20 22: aload 0
iload 14
invokevirtual android.text.Layout.getParagraphDirection:(I)I
istore 21
start local 21 23: iconst_0
istore 22
start local 22 24: aload 0
getfield android.text.Layout.mWidth:I
istore 23
start local 23 25: aload 0
getfield android.text.Layout.mSpannedText:Z
ifeq 75
26: aload 9
checkcast android.text.Spanned
astore 24
start local 24 27: aload 9
invokeinterface java.lang.CharSequence.length:()I
istore 25
start local 25 28: iload 15
ifeq 29
aload 9
iload 15
iconst_1
isub
invokeinterface java.lang.CharSequence.charAt:(I)C
bipush 10
if_icmpeq 29
iconst_0
goto 30
StackMap locals: android.text.Layout android.graphics.Canvas int int int int android.text.style.ParagraphStyle[] int android.text.TextPaint java.lang.CharSequence android.text.Layout$Alignment android.text.Layout$TabStops int android.text.TextLine int int int int int int int int int int android.text.Spanned int
StackMap stack:
29: iconst_1
StackMap locals:
StackMap stack: int
30: istore 26
start local 26 31: iload 15
iload 7
if_icmplt 45
iload 14
iload 2
if_icmpeq 32
iload 26
ifeq 45
32: StackMap locals: int
StackMap stack:
aload 24
iload 15
iload 25
33: ldc Landroid/text/style/ParagraphStyle;
34: invokeinterface android.text.Spanned.nextSpanTransition:(IILjava/lang/Class;)I
istore 7
35: aload 24
iload 15
iload 7
ldc Landroid/text/style/ParagraphStyle;
invokestatic android.text.Layout.getParagraphSpans:(Landroid/text/Spanned;IILjava/lang/Class;)[Ljava/lang/Object;
checkcast android.text.style.ParagraphStyle[]
astore 6
36: aload 0
getfield android.text.Layout.mAlignment:Landroid/text/Layout$Alignment;
astore 10
37: aload 6
arraylength
iconst_1
isub
istore 27
start local 27 38: goto 43
39: StackMap locals: int
StackMap stack:
aload 6
iload 27
aaload
instanceof android.text.style.AlignmentSpan
ifeq 42
40: aload 6
iload 27
aaload
checkcast android.text.style.AlignmentSpan
invokeinterface android.text.style.AlignmentSpan.getAlignment:()Landroid/text/Layout$Alignment;
astore 10
41: goto 44
42: StackMap locals:
StackMap stack:
iinc 27 -1
StackMap locals:
StackMap stack:
43: iload 27
ifge 39
end local 27 44: StackMap locals:
StackMap stack:
iconst_0
istore 12
45: StackMap locals:
StackMap stack:
aload 6
arraylength
istore 27
start local 27 46: iload 26
istore 28
start local 28 47: iconst_0
istore 29
start local 29 48: goto 56
49: StackMap locals: int int int
StackMap stack:
aload 6
iload 29
aaload
instanceof android.text.style.LeadingMarginSpan$LeadingMarginSpan2
ifeq 55
50: aload 6
iload 29
aaload
checkcast android.text.style.LeadingMarginSpan$LeadingMarginSpan2
invokeinterface android.text.style.LeadingMarginSpan$LeadingMarginSpan2.getLeadingMarginLineCount:()I
istore 30
start local 30 51: aload 0
aload 24
aload 6
iload 29
aaload
invokeinterface android.text.Spanned.getSpanStart:(Ljava/lang/Object;)I
invokevirtual android.text.Layout.getLineForOffset:(I)I
istore 31
start local 31 52: iload 14
iload 31
iload 30
iadd
if_icmpge 55
53: iconst_1
istore 28
54: goto 57
end local 31 end local 30 55: StackMap locals:
StackMap stack:
iinc 29 1
StackMap locals:
StackMap stack:
56: iload 29
iload 27
if_icmplt 49
end local 29 57: StackMap locals:
StackMap stack:
iconst_0
istore 29
start local 29 58: goto 74
59: StackMap locals: int
StackMap stack:
aload 6
iload 29
aaload
instanceof android.text.style.LeadingMarginSpan
ifeq 73
60: aload 6
iload 29
aaload
checkcast android.text.style.LeadingMarginSpan
astore 30
start local 30 61: iload 21
iconst_m1
if_icmpne 68
62: aload 30
aload 1
aload 8
iload 23
iload 21
iload 18
63: iload 20
iload 19
aload 9
64: iload 15
iload 17
iload 26
aload 0
65: invokeinterface android.text.style.LeadingMarginSpan.drawLeadingMargin:(Landroid/graphics/Canvas;Landroid/graphics/Paint;IIIIILjava/lang/CharSequence;IIZLandroid/text/Layout;)V
66: iload 23
aload 30
iload 28
invokeinterface android.text.style.LeadingMarginSpan.getLeadingMargin:(Z)I
isub
istore 23
67: goto 73
68: StackMap locals: android.text.style.LeadingMarginSpan
StackMap stack:
aload 30
aload 1
aload 8
iload 22
iload 21
iload 18
69: iload 20
iload 19
aload 9
70: iload 15
iload 17
iload 26
aload 0
71: invokeinterface android.text.style.LeadingMarginSpan.drawLeadingMargin:(Landroid/graphics/Canvas;Landroid/graphics/Paint;IIIIILjava/lang/CharSequence;IIZLandroid/text/Layout;)V
72: iload 22
aload 30
iload 28
invokeinterface android.text.style.LeadingMarginSpan.getLeadingMargin:(Z)I
iadd
istore 22
end local 30 73: StackMap locals:
StackMap stack:
iinc 29 1
StackMap locals:
StackMap stack:
74: iload 29
iload 27
if_icmplt 59
end local 29 end local 28 end local 27 end local 26 end local 25 end local 24 75: StackMap locals: android.text.Layout android.graphics.Canvas int int int int android.text.style.ParagraphStyle[] int android.text.TextPaint java.lang.CharSequence android.text.Layout$Alignment android.text.Layout$TabStops int android.text.TextLine int int int int int int int int int int
StackMap stack:
aload 0
iload 14
invokevirtual android.text.Layout.getLineContainsTab:(I)Z
istore 24
start local 24 76: iload 24
ifeq 82
iload 12
ifne 82
77: aload 11
ifnonnull 80
78: new android.text.Layout$TabStops
dup
bipush 20
aload 6
invokespecial android.text.Layout$TabStops.<init>:(I[Ljava/lang/Object;)V
astore 11
79: goto 81
80: StackMap locals: int
StackMap stack:
aload 11
bipush 20
aload 6
invokevirtual android.text.Layout$TabStops.reset:(I[Ljava/lang/Object;)V
81: StackMap locals:
StackMap stack:
iconst_1
istore 12
82: StackMap locals:
StackMap stack:
aload 10
astore 25
start local 25 83: aload 25
getstatic android.text.Layout$Alignment.ALIGN_LEFT:Landroid/text/Layout$Alignment;
if_acmpne 89
84: iload 21
iconst_1
if_icmpne 86
85: getstatic android.text.Layout$Alignment.ALIGN_NORMAL:Landroid/text/Layout$Alignment;
goto 87
StackMap locals: android.text.Layout$Alignment
StackMap stack:
86: getstatic android.text.Layout$Alignment.ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
87: StackMap locals:
StackMap stack: android.text.Layout$Alignment
astore 25
88: goto 94
StackMap locals:
StackMap stack:
89: aload 25
getstatic android.text.Layout$Alignment.ALIGN_RIGHT:Landroid/text/Layout$Alignment;
if_acmpne 94
90: iload 21
iconst_1
if_icmpne 92
91: getstatic android.text.Layout$Alignment.ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
goto 93
StackMap locals:
StackMap stack:
92: getstatic android.text.Layout$Alignment.ALIGN_NORMAL:Landroid/text/Layout$Alignment;
93: StackMap locals:
StackMap stack: android.text.Layout$Alignment
astore 25
94: StackMap locals:
StackMap stack:
aload 25
getstatic android.text.Layout$Alignment.ALIGN_NORMAL:Landroid/text/Layout$Alignment;
if_acmpne 102
95: iload 21
iconst_1
if_icmpne 99
96: aload 0
iload 14
getstatic android.text.Layout$Alignment.ALIGN_LEFT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
istore 27
start local 27 97: iload 22
iload 27
iadd
istore 26
start local 26 98: goto 114
end local 27 end local 26 99: StackMap locals:
StackMap stack:
aload 0
iload 14
getstatic android.text.Layout$Alignment.ALIGN_RIGHT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
ineg
istore 27
start local 27 100: iload 23
iload 27
isub
istore 26
start local 26 101: goto 114
end local 27 end local 26 102: StackMap locals:
StackMap stack:
aload 0
iload 14
aload 11
iconst_0
invokevirtual android.text.Layout.getLineExtent:(ILandroid/text/Layout$TabStops;Z)F
f2i
istore 28
start local 28 103: aload 25
getstatic android.text.Layout$Alignment.ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
if_acmpne 111
104: iload 21
iconst_1
if_icmpne 108
105: aload 0
iload 14
getstatic android.text.Layout$Alignment.ALIGN_RIGHT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
ineg
istore 27
start local 27 106: iload 23
iload 28
isub
iload 27
isub
istore 26
start local 26 107: goto 114
end local 27 end local 26 108: StackMap locals: android.text.Layout android.graphics.Canvas int int int int android.text.style.ParagraphStyle[] int android.text.TextPaint java.lang.CharSequence android.text.Layout$Alignment android.text.Layout$TabStops int android.text.TextLine int int int int int int int int int int int android.text.Layout$Alignment top top int
StackMap stack:
aload 0
iload 14
getstatic android.text.Layout$Alignment.ALIGN_LEFT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
istore 27
start local 27 109: iload 22
iload 28
isub
iload 27
iadd
istore 26
start local 26 110: goto 114
end local 27 end local 26 111: StackMap locals:
StackMap stack:
aload 0
iload 14
getstatic android.text.Layout$Alignment.ALIGN_CENTER:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
istore 27
start local 27 112: iload 28
bipush -2
iand
istore 28
113: iload 23
iload 22
iadd
iload 28
isub
iconst_1
ishr
iload 27
iadd
istore 26
end local 28 start local 26 114: StackMap locals: android.text.Layout android.graphics.Canvas int int int int android.text.style.ParagraphStyle[] int android.text.TextPaint java.lang.CharSequence android.text.Layout$Alignment android.text.Layout$TabStops int android.text.TextLine int int int int int int int int int int int android.text.Layout$Alignment int int
StackMap stack:
aload 0
iload 14
invokevirtual android.text.Layout.getLineDirections:(I)Landroid/text/Layout$Directions;
astore 28
start local 28 115: aload 28
getstatic android.text.Layout.DIRS_ALL_LEFT_TO_RIGHT:Landroid/text/Layout$Directions;
if_acmpne 118
aload 0
getfield android.text.Layout.mSpannedText:Z
ifne 118
iload 24
ifne 118
iload 16
ifne 118
116: aload 1
aload 9
iload 15
iload 17
iload 26
i2f
iload 20
i2f
aload 8
invokevirtual android.graphics.Canvas.drawText:(Ljava/lang/CharSequence;IIFFLandroid/graphics/Paint;)V
117: goto 122
118: StackMap locals: android.text.Layout$Directions
StackMap stack:
aload 13
aload 8
aload 9
iload 15
iload 17
iload 21
aload 28
iload 24
aload 11
invokevirtual android.text.TextLine.set:(Landroid/text/TextPaint;Ljava/lang/CharSequence;IIILandroid/text/Layout$Directions;ZLandroid/text/Layout$TabStops;)V
119: iload 16
ifeq 121
120: aload 13
iload 23
iload 22
isub
iload 27
isub
i2f
invokevirtual android.text.TextLine.justify:(F)V
121: StackMap locals:
StackMap stack:
aload 13
aload 1
iload 26
i2f
iload 18
iload 20
iload 19
invokevirtual android.text.TextLine.draw:(Landroid/graphics/Canvas;FIII)V
end local 28 end local 27 end local 26 end local 25 end local 24 end local 23 end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 122: StackMap locals: android.text.Layout android.graphics.Canvas int int int int android.text.style.ParagraphStyle[] int android.text.TextPaint java.lang.CharSequence android.text.Layout$Alignment android.text.Layout$TabStops int android.text.TextLine int
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
123: iload 14
iload 3
if_icmple 13
end local 14 124: aload 13
invokestatic android.text.TextLine.recycle:(Landroid/text/TextLine;)Landroid/text/TextLine;
pop
125: return
end local 13 end local 12 end local 11 end local 10 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 126 0 this Landroid/text/Layout;
0 126 1 canvas Landroid/graphics/Canvas;
0 126 2 firstLine I
0 126 3 lastLine I
1 126 4 previousLineBottom I
2 126 5 previousLineEnd I
3 126 6 spans [Landroid/text/style/ParagraphStyle;
4 126 7 spanEnd I
5 126 8 paint Landroid/text/TextPaint;
7 126 9 buf Ljava/lang/CharSequence;
8 126 10 paraAlign Landroid/text/Layout$Alignment;
9 126 11 tabStops Landroid/text/Layout$TabStops;
10 126 12 tabStopsIsInitialized Z
11 126 13 tl Landroid/text/TextLine;
12 124 14 lineNum I
14 122 15 start I
16 122 16 justify Z
17 122 17 end I
19 122 18 ltop I
20 122 19 lbottom I
22 122 20 lbaseline I
23 122 21 dir I
24 122 22 left I
25 122 23 right I
27 75 24 sp Landroid/text/Spanned;
28 75 25 textLength I
31 75 26 isFirstParaLine Z
38 44 27 n I
46 75 27 length I
47 75 28 useFirstLineMargin Z
48 57 29 n I
51 55 30 count I
52 55 31 startLine I
58 75 29 n I
61 73 30 margin Landroid/text/style/LeadingMarginSpan;
76 122 24 hasTab Z
83 122 25 align Landroid/text/Layout$Alignment;
98 99 26 x I
101 102 26 x I
107 108 26 x I
110 111 26 x I
114 122 26 x I
97 99 27 indentWidth I
100 102 27 indentWidth I
106 108 27 indentWidth I
109 111 27 indentWidth I
112 122 27 indentWidth I
103 114 28 max I
115 122 28 directions Landroid/text/Layout$Directions;
MethodParameters:
Name Flags
canvas
firstLine
lastLine
public void drawBackground(android.graphics.Canvas, android.graphics.Path, android.graphics.Paint, int, int, int);
descriptor: (Landroid/graphics/Canvas;Landroid/graphics/Path;Landroid/graphics/Paint;III)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=12, locals=24, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
getfield android.text.Layout.mSpannedText:Z
ifeq 48
1: aload 0
getfield android.text.Layout.mLineBackgroundSpans:Landroid/text/SpanSet;
ifnonnull 3
2: aload 0
new android.text.SpanSet
dup
ldc Landroid/text/style/LineBackgroundSpan;
invokespecial android.text.SpanSet.<init>:(Ljava/lang/Class;)V
putfield android.text.Layout.mLineBackgroundSpans:Landroid/text/SpanSet;
3: StackMap locals:
StackMap stack:
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
checkcast android.text.Spanned
astore 7
start local 7 4: aload 7
invokeinterface android.text.Spanned.length:()I
istore 8
start local 8 5: aload 0
getfield android.text.Layout.mLineBackgroundSpans:Landroid/text/SpanSet;
aload 7
iconst_0
iload 8
invokevirtual android.text.SpanSet.init:(Landroid/text/Spanned;II)V
6: aload 0
getfield android.text.Layout.mLineBackgroundSpans:Landroid/text/SpanSet;
getfield android.text.SpanSet.numberOfSpans:I
ifle 47
7: aload 0
iload 5
invokevirtual android.text.Layout.getLineTop:(I)I
istore 9
start local 9 8: aload 0
iload 5
invokevirtual android.text.Layout.getLineStart:(I)I
istore 10
start local 10 9: getstatic android.text.Layout.NO_PARA_SPANS:[Landroid/text/style/ParagraphStyle;
astore 11
start local 11 10: iconst_0
istore 12
start local 12 11: aload 0
getfield android.text.Layout.mPaint:Landroid/text/TextPaint;
astore 13
start local 13 12: iconst_0
istore 14
start local 14 13: aload 0
getfield android.text.Layout.mWidth:I
istore 15
start local 15 14: iload 5
istore 16
start local 16 15: goto 46
16: StackMap locals: android.text.Layout android.graphics.Canvas android.graphics.Path android.graphics.Paint int int int android.text.Spanned int int int android.text.style.ParagraphStyle[] int android.text.TextPaint int int int
StackMap stack:
iload 10
istore 17
start local 17 17: aload 0
iload 16
iconst_1
iadd
invokevirtual android.text.Layout.getLineStart:(I)I
istore 18
start local 18 18: iload 18
istore 10
19: iload 9
istore 19
start local 19 20: aload 0
iload 16
iconst_1
iadd
invokevirtual android.text.Layout.getLineTop:(I)I
istore 20
start local 20 21: iload 20
istore 9
22: iload 20
aload 0
iload 16
invokevirtual android.text.Layout.getLineDescent:(I)I
isub
istore 21
start local 21 23: iload 17
iload 14
if_icmplt 36
24: aload 0
getfield android.text.Layout.mLineBackgroundSpans:Landroid/text/SpanSet;
iload 17
iload 8
invokevirtual android.text.SpanSet.getNextTransition:(II)I
istore 14
25: iconst_0
istore 12
26: iload 17
iload 18
if_icmpne 27
iload 17
ifne 36
27: StackMap locals: android.text.Layout android.graphics.Canvas android.graphics.Path android.graphics.Paint int int int android.text.Spanned int int int android.text.style.ParagraphStyle[] int android.text.TextPaint int int int int int int int int
StackMap stack:
iconst_0
istore 22
start local 22 28: goto 35
29: StackMap locals: int
StackMap stack:
aload 0
getfield android.text.Layout.mLineBackgroundSpans:Landroid/text/SpanSet;
getfield android.text.SpanSet.spanStarts:[I
iload 22
iaload
iload 18
if_icmpge 34
30: aload 0
getfield android.text.Layout.mLineBackgroundSpans:Landroid/text/SpanSet;
getfield android.text.SpanSet.spanEnds:[I
iload 22
iaload
iload 17
if_icmpgt 31
goto 34
31: StackMap locals:
StackMap stack:
aload 11
iload 12
aload 0
getfield android.text.Layout.mLineBackgroundSpans:Landroid/text/SpanSet;
getfield android.text.SpanSet.spans:[Ljava/lang/Object;
checkcast android.text.style.LineBackgroundSpan[]
iload 22
aaload
32: invokestatic com.android.internal.util.GrowingArrayUtils.append:([Ljava/lang/Object;ILjava/lang/Object;)[Ljava/lang/Object;
checkcast android.text.style.ParagraphStyle[]
astore 11
33: iinc 12 1
34: StackMap locals:
StackMap stack:
iinc 22 1
StackMap locals:
StackMap stack:
35: iload 22
aload 0
getfield android.text.Layout.mLineBackgroundSpans:Landroid/text/SpanSet;
getfield android.text.SpanSet.numberOfSpans:I
if_icmplt 29
end local 22 36: StackMap locals:
StackMap stack:
iconst_0
istore 22
start local 22 37: goto 44
38: StackMap locals: int
StackMap stack:
aload 11
iload 22
aaload
checkcast android.text.style.LineBackgroundSpan
astore 23
start local 23 39: aload 23
aload 1
aload 13
iconst_0
iload 15
40: iload 19
iload 21
iload 20
41: aload 7
iload 17
iload 18
iload 16
42: invokeinterface android.text.style.LineBackgroundSpan.drawBackground:(Landroid/graphics/Canvas;Landroid/graphics/Paint;IIIIILjava/lang/CharSequence;III)V
end local 23 43: iinc 22 1
StackMap locals:
StackMap stack:
44: iload 22
iload 12
if_icmplt 38
end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 45: iinc 16 1
StackMap locals: android.text.Layout android.graphics.Canvas android.graphics.Path android.graphics.Paint int int int android.text.Spanned int int int android.text.style.ParagraphStyle[] int android.text.TextPaint int int int
StackMap stack:
46: iload 16
iload 6
if_icmple 16
end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 47: StackMap locals: android.text.Layout android.graphics.Canvas android.graphics.Path android.graphics.Paint int int int android.text.Spanned int
StackMap stack:
aload 0
getfield android.text.Layout.mLineBackgroundSpans:Landroid/text/SpanSet;
invokevirtual android.text.SpanSet.recycle:()V
end local 8 end local 7 48: StackMap locals:
StackMap stack:
aload 2
ifnull 52
49: iload 4
ifeq 50
aload 1
fconst_0
iload 4
i2f
invokevirtual android.graphics.Canvas.translate:(FF)V
50: StackMap locals:
StackMap stack:
aload 1
aload 2
aload 3
invokevirtual android.graphics.Canvas.drawPath:(Landroid/graphics/Path;Landroid/graphics/Paint;)V
51: iload 4
ifeq 52
aload 1
fconst_0
iload 4
ineg
i2f
invokevirtual android.graphics.Canvas.translate:(FF)V
52: StackMap locals:
StackMap stack:
return
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 53 0 this Landroid/text/Layout;
0 53 1 canvas Landroid/graphics/Canvas;
0 53 2 highlight Landroid/graphics/Path;
0 53 3 highlightPaint Landroid/graphics/Paint;
0 53 4 cursorOffsetVertical I
0 53 5 firstLine I
0 53 6 lastLine I
4 48 7 buffer Landroid/text/Spanned;
5 48 8 textLength I
8 47 9 previousLineBottom I
9 47 10 previousLineEnd I
10 47 11 spans [Landroid/text/style/ParagraphStyle;
11 47 12 spansLength I
12 47 13 paint Landroid/text/TextPaint;
13 47 14 spanEnd I
14 47 15 width I
15 47 16 i I
17 45 17 start I
18 45 18 end I
20 45 19 ltop I
21 45 20 lbottom I
23 45 21 lbaseline I
28 36 22 j I
37 45 22 n I
39 43 23 lineBackgroundSpan Landroid/text/style/LineBackgroundSpan;
MethodParameters:
Name Flags
canvas
highlight
highlightPaint
cursorOffsetVertical
firstLine
lastLine
public long getLineRangeForDraw(android.graphics.Canvas);
descriptor: (Landroid/graphics/Canvas;)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: getstatic android.text.Layout.sTempRect:Landroid/graphics/Rect;
dup
astore 4
monitorenter
1: aload 1
getstatic android.text.Layout.sTempRect:Landroid/graphics/Rect;
invokevirtual android.graphics.Canvas.getClipBounds:(Landroid/graphics/Rect;)Z
ifne 4
2: iconst_0
iconst_m1
invokestatic android.text.TextUtils.packRangeInLong:(II)J
aload 4
monitorexit
3: lreturn
4: StackMap locals: android.text.Layout android.graphics.Canvas top top android.graphics.Rect
StackMap stack:
getstatic android.text.Layout.sTempRect:Landroid/graphics/Rect;
getfield android.graphics.Rect.top:I
istore 2
start local 2 5: getstatic android.text.Layout.sTempRect:Landroid/graphics/Rect;
getfield android.graphics.Rect.bottom:I
istore 3
start local 3 6: aload 4
monitorexit
7: goto 10
end local 3 end local 2 StackMap locals:
StackMap stack: java.lang.Throwable
8: aload 4
monitorexit
9: athrow
start local 2 start local 3 10: StackMap locals: android.text.Layout android.graphics.Canvas int int
StackMap stack:
iload 2
iconst_0
invokestatic java.lang.Math.max:(II)I
istore 4
start local 4 11: aload 0
aload 0
invokevirtual android.text.Layout.getLineCount:()I
invokevirtual android.text.Layout.getLineTop:(I)I
iload 3
invokestatic java.lang.Math.min:(II)I
istore 5
start local 5 12: iload 4
iload 5
if_icmplt 13
iconst_0
iconst_m1
invokestatic android.text.TextUtils.packRangeInLong:(II)J
lreturn
13: StackMap locals: int int
StackMap stack:
aload 0
iload 4
invokevirtual android.text.Layout.getLineForVertical:(I)I
aload 0
iload 5
invokevirtual android.text.Layout.getLineForVertical:(I)I
invokestatic android.text.TextUtils.packRangeInLong:(II)J
lreturn
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 14 0 this Landroid/text/Layout;
0 14 1 canvas Landroid/graphics/Canvas;
5 8 2 dtop I
10 14 2 dtop I
6 8 3 dbottom I
10 14 3 dbottom I
11 14 4 top I
12 14 5 bottom I
Exception table:
from to target type
1 3 8 any
4 7 8 any
8 9 8 any
MethodParameters:
Name Flags
canvas
private int getLineStartPos(int, int, int);
descriptor: (III)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=12, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphAlignment:(I)Landroid/text/Layout$Alignment;
astore 4
start local 4 1: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphDirection:(I)I
istore 5
start local 5 2: aload 4
getstatic android.text.Layout$Alignment.ALIGN_LEFT:Landroid/text/Layout$Alignment;
if_acmpne 7
3: iload 5
iconst_1
if_icmpne 4
getstatic android.text.Layout$Alignment.ALIGN_NORMAL:Landroid/text/Layout$Alignment;
goto 5
StackMap locals: android.text.Layout$Alignment int
StackMap stack:
4: getstatic android.text.Layout$Alignment.ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
StackMap locals:
StackMap stack: android.text.Layout$Alignment
5: astore 4
6: goto 11
StackMap locals:
StackMap stack:
7: aload 4
getstatic android.text.Layout$Alignment.ALIGN_RIGHT:Landroid/text/Layout$Alignment;
if_acmpne 11
8: iload 5
iconst_1
if_icmpne 9
getstatic android.text.Layout$Alignment.ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
goto 10
StackMap locals:
StackMap stack:
9: getstatic android.text.Layout$Alignment.ALIGN_NORMAL:Landroid/text/Layout$Alignment;
StackMap locals:
StackMap stack: android.text.Layout$Alignment
10: astore 4
11: StackMap locals:
StackMap stack:
aload 4
getstatic android.text.Layout$Alignment.ALIGN_NORMAL:Landroid/text/Layout$Alignment;
if_acmpne 17
12: iload 5
iconst_1
if_icmpne 15
13: iload 2
aload 0
iload 1
getstatic android.text.Layout$Alignment.ALIGN_LEFT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
iadd
istore 6
start local 6 14: goto 38
end local 6 15: StackMap locals:
StackMap stack:
iload 3
aload 0
iload 1
getstatic android.text.Layout$Alignment.ALIGN_RIGHT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
iadd
istore 6
start local 6 16: goto 38
end local 6 17: StackMap locals:
StackMap stack:
aconst_null
astore 7
start local 7 18: aload 0
getfield android.text.Layout.mSpannedText:Z
ifeq 29
aload 0
iload 1
invokevirtual android.text.Layout.getLineContainsTab:(I)Z
ifeq 29
19: aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
checkcast android.text.Spanned
astore 8
start local 8 20: aload 0
iload 1
invokevirtual android.text.Layout.getLineStart:(I)I
istore 9
start local 9 21: aload 8
iload 9
aload 8
invokeinterface android.text.Spanned.length:()I
22: ldc Landroid/text/style/TabStopSpan;
23: invokeinterface android.text.Spanned.nextSpanTransition:(IILjava/lang/Class;)I
istore 10
start local 10 24: aload 8
iload 9
iload 10
25: ldc Landroid/text/style/TabStopSpan;
26: invokestatic android.text.Layout.getParagraphSpans:(Landroid/text/Spanned;IILjava/lang/Class;)[Ljava/lang/Object;
checkcast android.text.style.TabStopSpan[]
astore 11
start local 11 27: aload 11
arraylength
ifle 29
28: new android.text.Layout$TabStops
dup
bipush 20
aload 11
invokespecial android.text.Layout$TabStops.<init>:(I[Ljava/lang/Object;)V
astore 7
end local 11 end local 10 end local 9 end local 8 29: StackMap locals: android.text.Layout int int int android.text.Layout$Alignment int top android.text.Layout$TabStops
StackMap stack:
aload 0
iload 1
aload 7
iconst_0
invokevirtual android.text.Layout.getLineExtent:(ILandroid/text/Layout$TabStops;Z)F
f2i
istore 8
start local 8 30: aload 4
getstatic android.text.Layout$Alignment.ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
if_acmpne 36
31: iload 5
iconst_1
if_icmpne 34
32: iload 3
iload 8
isub
aload 0
iload 1
getstatic android.text.Layout$Alignment.ALIGN_RIGHT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
iadd
istore 6
start local 6 33: goto 38
end local 6 34: StackMap locals: int
StackMap stack:
iload 2
iload 8
isub
aload 0
iload 1
getstatic android.text.Layout$Alignment.ALIGN_LEFT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
iadd
istore 6
start local 6 35: goto 38
end local 6 36: StackMap locals:
StackMap stack:
iload 8
bipush -2
iand
istore 8
37: iload 2
iload 3
iadd
iload 8
isub
iconst_1
aload 0
iload 1
getstatic android.text.Layout$Alignment.ALIGN_CENTER:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout.getIndentAdjust:(ILandroid/text/Layout$Alignment;)I
iadd
ishr
istore 6
end local 8 end local 7 start local 6 38: StackMap locals: android.text.Layout int int int android.text.Layout$Alignment int int
StackMap stack:
iload 6
ireturn
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 39 0 this Landroid/text/Layout;
0 39 1 line I
0 39 2 left I
0 39 3 right I
1 39 4 align Landroid/text/Layout$Alignment;
2 39 5 dir I
14 15 6 x I
16 17 6 x I
33 34 6 x I
35 36 6 x I
38 39 6 x I
18 38 7 tabStops Landroid/text/Layout$TabStops;
20 29 8 spanned Landroid/text/Spanned;
21 29 9 start I
24 29 10 spanEnd I
27 29 11 tabSpans [Landroid/text/style/TabStopSpan;
30 38 8 max I
MethodParameters:
Name Flags
line
left
right
public final java.lang.CharSequence getText();
descriptor: ()Ljava/lang/CharSequence;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
public final android.text.TextPaint getPaint();
descriptor: ()Landroid/text/TextPaint;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.text.Layout.mPaint:Landroid/text/TextPaint;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
public final int getWidth();
descriptor: ()I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.text.Layout.mWidth:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
public int getEllipsizedWidth();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.text.Layout.mWidth:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
public final void increaseWidthTo(int);
descriptor: (I)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
aload 0
getfield android.text.Layout.mWidth:I
if_icmpge 2
1: new java.lang.RuntimeException
dup
ldc "attempted to reduce Layout width"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield android.text.Layout.mWidth:I
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/text/Layout;
0 4 1 wid I
MethodParameters:
Name Flags
wid
public int getHeight();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
invokevirtual android.text.Layout.getLineCount:()I
invokevirtual android.text.Layout.getLineTop:(I)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
public int getHeight(boolean);
descriptor: (Z)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual android.text.Layout.getHeight:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 cap Z
MethodParameters:
Name Flags
cap
public final android.text.Layout$Alignment getAlignment();
descriptor: ()Landroid/text/Layout$Alignment;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.text.Layout.mAlignment:Landroid/text/Layout$Alignment;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
public final float getSpacingMultiplier();
descriptor: ()F
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.text.Layout.mSpacingMult:F
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
public final float getSpacingAdd();
descriptor: ()F
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.text.Layout.mSpacingAdd:F
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
public final android.text.TextDirectionHeuristic getTextDirectionHeuristic();
descriptor: ()Landroid/text/TextDirectionHeuristic;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.text.Layout.mTextDir:Landroid/text/TextDirectionHeuristic;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
public abstract int getLineCount();
descriptor: ()I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public int getLineBounds(int, android.graphics.Rect);
descriptor: (ILandroid/graphics/Rect;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnull 5
1: aload 2
iconst_0
putfield android.graphics.Rect.left:I
2: aload 2
aload 0
iload 1
invokevirtual android.text.Layout.getLineTop:(I)I
putfield android.graphics.Rect.top:I
3: aload 2
aload 0
getfield android.text.Layout.mWidth:I
putfield android.graphics.Rect.right:I
4: aload 2
aload 0
iload 1
iconst_1
iadd
invokevirtual android.text.Layout.getLineTop:(I)I
putfield android.graphics.Rect.bottom:I
5: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual android.text.Layout.getLineBaseline:(I)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Landroid/text/Layout;
0 6 1 line I
0 6 2 bounds Landroid/graphics/Rect;
MethodParameters:
Name Flags
line
bounds
public abstract int getLineTop(int);
descriptor: (I)I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
line
public abstract int getLineDescent(int);
descriptor: (I)I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
line
public abstract int getLineStart(int);
descriptor: (I)I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
line
public abstract int getParagraphDirection(int);
descriptor: (I)I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
line
public abstract boolean getLineContainsTab(int);
descriptor: (I)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
line
public abstract android.text.Layout$Directions getLineDirections(int);
descriptor: (I)Landroid/text/Layout$Directions;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
line
public abstract int getTopPadding();
descriptor: ()I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract int getBottomPadding();
descriptor: ()I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public int getHyphen(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 line I
MethodParameters:
Name Flags
line
public int getIndentAdjust(int, android.text.Layout$Alignment);
descriptor: (ILandroid/text/Layout$Alignment;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 line I
0 1 2 alignment Landroid/text/Layout$Alignment;
MethodParameters:
Name Flags
line
alignment
public boolean isLevelBoundary(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=9, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual android.text.Layout.getLineForOffset:(I)I
istore 2
start local 2 1: aload 0
iload 2
invokevirtual android.text.Layout.getLineDirections:(I)Landroid/text/Layout$Directions;
astore 3
start local 3 2: aload 3
getstatic android.text.Layout.DIRS_ALL_LEFT_TO_RIGHT:Landroid/text/Layout$Directions;
if_acmpeq 3
aload 3
getstatic android.text.Layout.DIRS_ALL_RIGHT_TO_LEFT:Landroid/text/Layout$Directions;
if_acmpne 4
3: StackMap locals: int android.text.Layout$Directions
StackMap stack:
iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 3
getfield android.text.Layout$Directions.mDirections:[I
astore 4
start local 4 5: aload 0
iload 2
invokevirtual android.text.Layout.getLineStart:(I)I
istore 5
start local 5 6: aload 0
iload 2
invokevirtual android.text.Layout.getLineEnd:(I)I
istore 6
start local 6 7: iload 1
iload 5
if_icmpeq 8
iload 1
iload 6
if_icmpne 16
8: StackMap locals: int[] int int
StackMap stack:
aload 0
iload 2
invokevirtual android.text.Layout.getParagraphDirection:(I)I
iconst_1
if_icmpne 9
iconst_0
goto 10
StackMap locals:
StackMap stack:
9: iconst_1
StackMap locals:
StackMap stack: int
10: istore 7
start local 7 11: iload 1
iload 5
if_icmpne 12
iconst_0
goto 13
StackMap locals: int
StackMap stack:
12: aload 4
arraylength
iconst_2
isub
StackMap locals:
StackMap stack: int
13: istore 8
start local 8 14: aload 4
iload 8
iconst_1
iadd
iaload
bipush 26
iushr
bipush 63
iand
iload 7
if_icmpeq 15
iconst_1
ireturn
StackMap locals: int
StackMap stack:
15: iconst_0
ireturn
end local 8 end local 7 16: StackMap locals:
StackMap stack:
iload 1
iload 5
isub
istore 1
17: iconst_0
istore 7
start local 7 18: goto 22
19: StackMap locals: int
StackMap stack:
iload 1
aload 4
iload 7
iaload
if_icmpne 21
20: iconst_1
ireturn
21: StackMap locals:
StackMap stack:
iinc 7 2
StackMap locals:
StackMap stack:
22: iload 7
aload 4
arraylength
if_icmplt 19
end local 7 23: iconst_0
ireturn
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 24 0 this Landroid/text/Layout;
0 24 1 offset I
1 24 2 line I
2 24 3 dirs Landroid/text/Layout$Directions;
5 24 4 runs [I
6 24 5 lineStart I
7 24 6 lineEnd I
11 16 7 paraLevel I
14 16 8 runIndex I
18 23 7 i I
MethodParameters:
Name Flags
offset
public boolean isRtlCharAt(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=10, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual android.text.Layout.getLineForOffset:(I)I
istore 2
start local 2 1: aload 0
iload 2
invokevirtual android.text.Layout.getLineDirections:(I)Landroid/text/Layout$Directions;
astore 3
start local 3 2: aload 3
getstatic android.text.Layout.DIRS_ALL_LEFT_TO_RIGHT:Landroid/text/Layout$Directions;
if_acmpne 4
3: iconst_0
ireturn
4: StackMap locals: int android.text.Layout$Directions
StackMap stack:
aload 3
getstatic android.text.Layout.DIRS_ALL_RIGHT_TO_LEFT:Landroid/text/Layout$Directions;
if_acmpne 6
5: iconst_1
ireturn
6: StackMap locals:
StackMap stack:
aload 3
getfield android.text.Layout$Directions.mDirections:[I
astore 4
start local 4 7: aload 0
iload 2
invokevirtual android.text.Layout.getLineStart:(I)I
istore 5
start local 5 8: iconst_0
istore 6
start local 6 9: goto 17
10: StackMap locals: int[] int int
StackMap stack:
iload 5
aload 4
iload 6
iaload
iadd
istore 7
start local 7 11: iload 7
aload 4
iload 6
iconst_1
iadd
iaload
ldc 67108863
iand
iadd
istore 8
start local 8 12: iload 1
iload 7
if_icmplt 16
iload 1
iload 8
if_icmpge 16
13: aload 4
iload 6
iconst_1
iadd
iaload
bipush 26
iushr
bipush 63
iand
istore 9
start local 9 14: iload 9
iconst_1
iand
ifeq 15
iconst_1
ireturn
StackMap locals: int int int
StackMap stack:
15: iconst_0
ireturn
end local 9 end local 8 end local 7 16: StackMap locals:
StackMap stack:
iinc 6 2
StackMap locals:
StackMap stack:
17: iload 6
aload 4
arraylength
if_icmplt 10
end local 6 18: 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 19 0 this Landroid/text/Layout;
0 19 1 offset I
1 19 2 line I
2 19 3 dirs Landroid/text/Layout$Directions;
7 19 4 runs [I
8 19 5 lineStart I
9 18 6 i I
11 16 7 start I
12 16 8 limit I
14 16 9 level I
MethodParameters:
Name Flags
offset
public long getRunRange(int);
descriptor: (I)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual android.text.Layout.getLineForOffset:(I)I
istore 2
start local 2 1: aload 0
iload 2
invokevirtual android.text.Layout.getLineDirections:(I)Landroid/text/Layout$Directions;
astore 3
start local 3 2: aload 3
getstatic android.text.Layout.DIRS_ALL_LEFT_TO_RIGHT:Landroid/text/Layout$Directions;
if_acmpeq 3
aload 3
getstatic android.text.Layout.DIRS_ALL_RIGHT_TO_LEFT:Landroid/text/Layout$Directions;
if_acmpne 4
3: StackMap locals: int android.text.Layout$Directions
StackMap stack:
iconst_0
aload 0
iload 2
invokevirtual android.text.Layout.getLineEnd:(I)I
invokestatic android.text.TextUtils.packRangeInLong:(II)J
lreturn
4: StackMap locals:
StackMap stack:
aload 3
getfield android.text.Layout$Directions.mDirections:[I
astore 4
start local 4 5: aload 0
iload 2
invokevirtual android.text.Layout.getLineStart:(I)I
istore 5
start local 5 6: iconst_0
istore 6
start local 6 7: goto 13
8: StackMap locals: int[] int int
StackMap stack:
iload 5
aload 4
iload 6
iaload
iadd
istore 7
start local 7 9: iload 7
aload 4
iload 6
iconst_1
iadd
iaload
ldc 67108863
iand
iadd
istore 8
start local 8 10: iload 1
iload 7
if_icmplt 12
iload 1
iload 8
if_icmpge 12
11: iload 7
iload 8
invokestatic android.text.TextUtils.packRangeInLong:(II)J
lreturn
end local 8 end local 7 12: StackMap locals:
StackMap stack:
iinc 6 2
StackMap locals:
StackMap stack:
13: iload 6
aload 4
arraylength
if_icmplt 8
end local 6 14: iconst_0
aload 0
iload 2
invokevirtual android.text.Layout.getLineEnd:(I)I
invokestatic android.text.TextUtils.packRangeInLong:(II)J
lreturn
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 Landroid/text/Layout;
0 15 1 offset I
1 15 2 line I
2 15 3 dirs Landroid/text/Layout$Directions;
5 15 4 runs [I
6 15 5 lineStart I
7 14 6 i I
9 12 7 start I
10 12 8 limit I
MethodParameters:
Name Flags
offset
private boolean primaryIsTrailingPrevious(int);
descriptor: (I)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=11, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual android.text.Layout.getLineForOffset:(I)I
istore 2
start local 2 1: aload 0
iload 2
invokevirtual android.text.Layout.getLineStart:(I)I
istore 3
start local 3 2: aload 0
iload 2
invokevirtual android.text.Layout.getLineEnd:(I)I
istore 4
start local 4 3: aload 0
iload 2
invokevirtual android.text.Layout.getLineDirections:(I)Landroid/text/Layout$Directions;
getfield android.text.Layout$Directions.mDirections:[I
astore 5
start local 5 4: iconst_m1
istore 6
start local 6 5: iconst_0
istore 7
start local 7 6: goto 17
7: StackMap locals: android.text.Layout int int int int int[] int int
StackMap stack:
iload 3
aload 5
iload 7
iaload
iadd
istore 8
start local 8 8: iload 8
aload 5
iload 7
iconst_1
iadd
iaload
ldc 67108863
iand
iadd
istore 9
start local 9 9: iload 9
iload 4
if_icmple 11
10: iload 4
istore 9
11: StackMap locals: int int
StackMap stack:
iload 1
iload 8
if_icmplt 16
iload 1
iload 9
if_icmpge 16
12: iload 1
iload 8
if_icmple 14
13: iconst_0
ireturn
14: StackMap locals:
StackMap stack:
aload 5
iload 7
iconst_1
iadd
iaload
bipush 26
iushr
bipush 63
iand
istore 6
15: goto 18
end local 9 end local 8 16: StackMap locals:
StackMap stack:
iinc 7 2
StackMap locals:
StackMap stack:
17: iload 7
aload 5
arraylength
if_icmplt 7
end local 7 18: StackMap locals:
StackMap stack:
iload 6
iconst_m1
if_icmpne 22
19: aload 0
iload 2
invokevirtual android.text.Layout.getParagraphDirection:(I)I
iconst_1
if_icmpne 20
iconst_0
goto 21
StackMap locals:
StackMap stack:
20: iconst_1
StackMap locals:
StackMap stack: int
21: istore 6
22: StackMap locals:
StackMap stack:
iconst_m1
istore 7
start local 7 23: iload 1
iload 3
if_icmpne 28
24: aload 0
iload 2
invokevirtual android.text.Layout.getParagraphDirection:(I)I
iconst_1
if_icmpne 25
iconst_0
goto 26
StackMap locals: int
StackMap stack:
25: iconst_1
StackMap locals:
StackMap stack: int
26: istore 7
27: goto 40
28: StackMap locals:
StackMap stack:
iinc 1 -1
29: iconst_0
istore 8
start local 8 30: goto 39
31: StackMap locals: int
StackMap stack:
iload 3
aload 5
iload 8
iaload
iadd
istore 9
start local 9 32: iload 9
aload 5
iload 8
iconst_1
iadd
iaload
ldc 67108863
iand
iadd
istore 10
start local 10 33: iload 10
iload 4
if_icmple 35
34: iload 4
istore 10
35: StackMap locals: int int
StackMap stack:
iload 1
iload 9
if_icmplt 38
iload 1
iload 10
if_icmpge 38
36: aload 5
iload 8
iconst_1
iadd
iaload
bipush 26
iushr
bipush 63
iand
istore 7
37: goto 40
end local 10 end local 9 38: StackMap locals:
StackMap stack:
iinc 8 2
StackMap locals:
StackMap stack:
39: iload 8
aload 5
arraylength
if_icmplt 31
end local 8 40: StackMap locals:
StackMap stack:
iload 7
iload 6
if_icmpge 41
iconst_1
ireturn
StackMap locals:
StackMap stack:
41: iconst_0
ireturn
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 42 0 this Landroid/text/Layout;
0 42 1 offset I
1 42 2 line I
2 42 3 lineStart I
3 42 4 lineEnd I
4 42 5 runs [I
5 42 6 levelAt I
6 18 7 i I
8 16 8 start I
9 16 9 limit I
23 42 7 levelBefore I
30 40 8 i I
32 38 9 start I
33 38 10 limit I
MethodParameters:
Name Flags
offset
private boolean[] primaryIsTrailingPreviousAllLineOffsets(int);
descriptor: (I)[Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=10, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual android.text.Layout.getLineStart:(I)I
istore 2
start local 2 1: aload 0
iload 1
invokevirtual android.text.Layout.getLineEnd:(I)I
istore 3
start local 3 2: aload 0
iload 1
invokevirtual android.text.Layout.getLineDirections:(I)Landroid/text/Layout$Directions;
getfield android.text.Layout$Directions.mDirections:[I
astore 4
start local 4 3: iload 3
iload 2
isub
iconst_1
iadd
newarray 4
astore 5
start local 5 4: iload 3
iload 2
isub
iconst_1
iadd
newarray 8
astore 6
start local 6 5: iconst_0
istore 7
start local 7 6: goto 15
7: StackMap locals: android.text.Layout int int int int[] boolean[] byte[] int
StackMap stack:
iload 2
aload 4
iload 7
iaload
iadd
istore 8
start local 8 8: iload 8
aload 4
iload 7
iconst_1
iadd
iaload
ldc 67108863
iand
iadd
istore 9
start local 9 9: iload 9
iload 3
if_icmple 11
10: iload 3
istore 9
11: StackMap locals: int int
StackMap stack:
aload 6
iload 9
iload 2
isub
iconst_1
isub
12: aload 4
iload 7
iconst_1
iadd
iaload
bipush 26
iushr
bipush 63
iand
i2b
13: bastore
end local 9 end local 8 14: iinc 7 2
StackMap locals:
StackMap stack:
15: iload 7
aload 4
arraylength
if_icmplt 7
end local 7 16: iconst_0
istore 7
start local 7 17: goto 28
18: StackMap locals:
StackMap stack:
iload 2
aload 4
iload 7
iaload
iadd
istore 8
start local 8 19: aload 4
iload 7
iconst_1
iadd
iaload
bipush 26
iushr
bipush 63
iand
i2b
istore 9
start local 9 20: aload 5
iload 8
iload 2
isub
iload 9
iload 8
iload 2
if_icmpne 23
21: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphDirection:(I)I
iconst_1
if_icmpne 22
iconst_0
goto 24
StackMap locals: android.text.Layout int int int int[] boolean[] byte[] int int int
StackMap stack: boolean[] int int
22: iconst_1
goto 24
23: StackMap locals: android.text.Layout int int int int[] boolean[] byte[] int int int
StackMap stack: boolean[] int int
aload 6
iload 8
iload 2
isub
iconst_1
isub
baload
StackMap locals: android.text.Layout int int int int[] boolean[] byte[] int int int
StackMap stack: boolean[] int int int
24: if_icmple 25
iconst_1
goto 26
StackMap locals: android.text.Layout int int int int[] boolean[] byte[] int int int
StackMap stack: boolean[] int
25: iconst_0
26: StackMap locals: android.text.Layout int int int int[] boolean[] byte[] int int int
StackMap stack: boolean[] int int
bastore
end local 9 end local 8 27: iinc 7 2
StackMap locals:
StackMap stack:
28: iload 7
aload 4
arraylength
if_icmplt 18
end local 7 29: aload 5
areturn
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 30 0 this Landroid/text/Layout;
0 30 1 line I
1 30 2 lineStart I
2 30 3 lineEnd I
3 30 4 runs [I
4 30 5 trailing [Z
5 30 6 level [B
6 16 7 i I
8 14 8 start I
9 14 9 limit I
17 29 7 i I
19 27 8 start I
20 27 9 currentLevel B
MethodParameters:
Name Flags
line
public float getPrimaryHorizontal(int);
descriptor: (I)F
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_0
invokevirtual android.text.Layout.getPrimaryHorizontal:(IZ)F
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 offset I
MethodParameters:
Name Flags
offset
public float getPrimaryHorizontal(int, boolean);
descriptor: (IZ)F
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
invokevirtual android.text.Layout.primaryIsTrailingPrevious:(I)Z
istore 3
start local 3 1: aload 0
iload 1
iload 3
iload 2
invokevirtual android.text.Layout.getHorizontal:(IZZ)F
freturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/text/Layout;
0 2 1 offset I
0 2 2 clamped Z
1 2 3 trailing Z
MethodParameters:
Name Flags
offset
clamped
public float getSecondaryHorizontal(int);
descriptor: (I)F
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_0
invokevirtual android.text.Layout.getSecondaryHorizontal:(IZ)F
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 offset I
MethodParameters:
Name Flags
offset
public float getSecondaryHorizontal(int, boolean);
descriptor: (IZ)F
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
invokevirtual android.text.Layout.primaryIsTrailingPrevious:(I)Z
istore 3
start local 3 1: aload 0
iload 1
iload 3
ifeq 2
iconst_0
goto 3
StackMap locals: android.text.Layout int int int
StackMap stack: android.text.Layout int
2: iconst_1
StackMap locals: android.text.Layout int int int
StackMap stack: android.text.Layout int int
3: iload 2
invokevirtual android.text.Layout.getHorizontal:(IZZ)F
freturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/text/Layout;
0 4 1 offset I
0 4 2 clamped Z
1 4 3 trailing Z
MethodParameters:
Name Flags
offset
clamped
private float getHorizontal(int, boolean);
descriptor: (IZ)F
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ifeq 1
aload 0
iload 1
invokevirtual android.text.Layout.getPrimaryHorizontal:(I)F
goto 2
StackMap locals:
StackMap stack:
1: aload 0
iload 1
invokevirtual android.text.Layout.getSecondaryHorizontal:(I)F
StackMap locals:
StackMap stack: float
2: freturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/text/Layout;
0 3 1 offset I
0 3 2 primary Z
MethodParameters:
Name Flags
offset
primary
private float getHorizontal(int, boolean, boolean);
descriptor: (IZZ)F
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
invokevirtual android.text.Layout.getLineForOffset:(I)I
istore 4
start local 4 1: aload 0
iload 1
iload 2
iload 4
iload 3
invokevirtual android.text.Layout.getHorizontal:(IZIZ)F
freturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/text/Layout;
0 2 1 offset I
0 2 2 trailing Z
0 2 3 clamped Z
1 2 4 line I
MethodParameters:
Name Flags
offset
trailing
clamped
private float getHorizontal(int, boolean, int, boolean);
descriptor: (IZIZ)F
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=15, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 3
invokevirtual android.text.Layout.getLineStart:(I)I
istore 5
start local 5 1: aload 0
iload 3
invokevirtual android.text.Layout.getLineEnd:(I)I
istore 6
start local 6 2: aload 0
iload 3
invokevirtual android.text.Layout.getParagraphDirection:(I)I
istore 7
start local 7 3: aload 0
iload 3
invokevirtual android.text.Layout.getLineContainsTab:(I)Z
istore 8
start local 8 4: aload 0
iload 3
invokevirtual android.text.Layout.getLineDirections:(I)Landroid/text/Layout$Directions;
astore 9
start local 9 5: aconst_null
astore 10
start local 10 6: iload 8
ifeq 10
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
instanceof android.text.Spanned
ifeq 10
7: aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
checkcast android.text.Spanned
iload 5
iload 6
ldc Landroid/text/style/TabStopSpan;
invokestatic android.text.Layout.getParagraphSpans:(Landroid/text/Spanned;IILjava/lang/Class;)[Ljava/lang/Object;
checkcast android.text.style.TabStopSpan[]
astore 11
start local 11 8: aload 11
arraylength
ifle 10
9: new android.text.Layout$TabStops
dup
bipush 20
aload 11
invokespecial android.text.Layout$TabStops.<init>:(I[Ljava/lang/Object;)V
astore 10
end local 11 10: StackMap locals: android.text.Layout int int int int int int int int android.text.Layout$Directions android.text.Layout$TabStops
StackMap stack:
invokestatic android.text.TextLine.obtain:()Landroid/text/TextLine;
astore 11
start local 11 11: aload 11
aload 0
getfield android.text.Layout.mPaint:Landroid/text/TextPaint;
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
iload 5
iload 6
iload 7
aload 9
iload 8
aload 10
invokevirtual android.text.TextLine.set:(Landroid/text/TextPaint;Ljava/lang/CharSequence;IIILandroid/text/Layout$Directions;ZLandroid/text/Layout$TabStops;)V
12: aload 11
iload 1
iload 5
isub
iload 2
aconst_null
invokevirtual android.text.TextLine.measure:(IZLandroid/graphics/Paint$FontMetricsInt;)F
fstore 12
start local 12 13: aload 11
invokestatic android.text.TextLine.recycle:(Landroid/text/TextLine;)Landroid/text/TextLine;
pop
14: iload 4
ifeq 16
fload 12
aload 0
getfield android.text.Layout.mWidth:I
i2f
fcmpl
ifle 16
15: aload 0
getfield android.text.Layout.mWidth:I
i2f
fstore 12
16: StackMap locals: android.text.TextLine float
StackMap stack:
aload 0
iload 3
invokevirtual android.text.Layout.getParagraphLeft:(I)I
istore 13
start local 13 17: aload 0
iload 3
invokevirtual android.text.Layout.getParagraphRight:(I)I
istore 14
start local 14 18: aload 0
iload 3
iload 13
iload 14
invokevirtual android.text.Layout.getLineStartPos:(III)I
i2f
fload 12
fadd
freturn
end local 14 end local 13 end local 12 end local 11 end local 10 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 19 0 this Landroid/text/Layout;
0 19 1 offset I
0 19 2 trailing Z
0 19 3 line I
0 19 4 clamped Z
1 19 5 start I
2 19 6 end I
3 19 7 dir I
4 19 8 hasTab Z
5 19 9 directions Landroid/text/Layout$Directions;
6 19 10 tabStops Landroid/text/Layout$TabStops;
8 10 11 tabs [Landroid/text/style/TabStopSpan;
11 19 11 tl Landroid/text/TextLine;
13 19 12 wid F
17 19 13 left I
18 19 14 right I
MethodParameters:
Name Flags
offset
trailing
line
clamped
private float[] getLineHorizontals(int, boolean, boolean);
descriptor: (IZZ)[F
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=18, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
invokevirtual android.text.Layout.getLineStart:(I)I
istore 4
start local 4 1: aload 0
iload 1
invokevirtual android.text.Layout.getLineEnd:(I)I
istore 5
start local 5 2: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphDirection:(I)I
istore 6
start local 6 3: aload 0
iload 1
invokevirtual android.text.Layout.getLineContainsTab:(I)Z
istore 7
start local 7 4: aload 0
iload 1
invokevirtual android.text.Layout.getLineDirections:(I)Landroid/text/Layout$Directions;
astore 8
start local 8 5: aconst_null
astore 9
start local 9 6: iload 7
ifeq 10
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
instanceof android.text.Spanned
ifeq 10
7: aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
checkcast android.text.Spanned
iload 4
iload 5
ldc Landroid/text/style/TabStopSpan;
invokestatic android.text.Layout.getParagraphSpans:(Landroid/text/Spanned;IILjava/lang/Class;)[Ljava/lang/Object;
checkcast android.text.style.TabStopSpan[]
astore 10
start local 10 8: aload 10
arraylength
ifle 10
9: new android.text.Layout$TabStops
dup
bipush 20
aload 10
invokespecial android.text.Layout$TabStops.<init>:(I[Ljava/lang/Object;)V
astore 9
end local 10 10: StackMap locals: android.text.Layout int int int int int int int android.text.Layout$Directions android.text.Layout$TabStops
StackMap stack:
invokestatic android.text.TextLine.obtain:()Landroid/text/TextLine;
astore 10
start local 10 11: aload 10
aload 0
getfield android.text.Layout.mPaint:Landroid/text/TextPaint;
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
iload 4
iload 5
iload 6
aload 8
iload 7
aload 9
invokevirtual android.text.TextLine.set:(Landroid/text/TextPaint;Ljava/lang/CharSequence;IIILandroid/text/Layout$Directions;ZLandroid/text/Layout$TabStops;)V
12: aload 0
iload 1
invokevirtual android.text.Layout.primaryIsTrailingPreviousAllLineOffsets:(I)[Z
astore 11
start local 11 13: iload 3
ifne 21
14: iconst_0
istore 12
start local 12 15: goto 20
16: StackMap locals: android.text.TextLine boolean[] int
StackMap stack:
aload 11
iload 12
aload 11
iload 12
baload
ifeq 17
iconst_0
goto 18
StackMap locals: android.text.Layout int int int int int int int android.text.Layout$Directions android.text.Layout$TabStops android.text.TextLine boolean[] int
StackMap stack: boolean[] int
17: iconst_1
StackMap locals: android.text.Layout int int int int int int int android.text.Layout$Directions android.text.Layout$TabStops android.text.TextLine boolean[] int
StackMap stack: boolean[] int int
18: bastore
19: iinc 12 1
StackMap locals:
StackMap stack:
20: iload 12
aload 11
arraylength
if_icmplt 16
end local 12 21: StackMap locals:
StackMap stack:
aload 10
aload 11
aconst_null
invokevirtual android.text.TextLine.measureAllOffsets:([ZLandroid/graphics/Paint$FontMetricsInt;)[F
astore 12
start local 12 22: aload 10
invokestatic android.text.TextLine.recycle:(Landroid/text/TextLine;)Landroid/text/TextLine;
pop
23: iload 2
ifeq 30
24: iconst_0
istore 13
start local 13 25: goto 29
26: StackMap locals: float[] int
StackMap stack:
aload 12
iload 13
faload
aload 0
getfield android.text.Layout.mWidth:I
i2f
fcmpl
ifle 28
27: aload 12
iload 13
aload 0
getfield android.text.Layout.mWidth:I
i2f
fastore
28: StackMap locals:
StackMap stack:
iinc 13 1
StackMap locals:
StackMap stack:
29: iload 13
aload 12
arraylength
if_icmple 26
end local 13 30: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual android.text.Layout.getParagraphLeft:(I)I
istore 13
start local 13 31: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphRight:(I)I
istore 14
start local 14 32: aload 0
iload 1
iload 13
iload 14
invokevirtual android.text.Layout.getLineStartPos:(III)I
istore 15
start local 15 33: iload 5
iload 4
isub
iconst_1
iadd
newarray 6
astore 16
start local 16 34: iconst_0
istore 17
start local 17 35: goto 38
36: StackMap locals: android.text.Layout int int int int int int int android.text.Layout$Directions android.text.Layout$TabStops android.text.TextLine boolean[] float[] int int int float[] int
StackMap stack:
aload 16
iload 17
iload 15
i2f
aload 12
iload 17
faload
fadd
fastore
37: iinc 17 1
StackMap locals:
StackMap stack:
38: iload 17
aload 16
arraylength
if_icmplt 36
end local 17 39: aload 16
areturn
end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 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 40 0 this Landroid/text/Layout;
0 40 1 line I
0 40 2 clamped Z
0 40 3 primary Z
1 40 4 start I
2 40 5 end I
3 40 6 dir I
4 40 7 hasTab Z
5 40 8 directions Landroid/text/Layout$Directions;
6 40 9 tabStops Landroid/text/Layout$TabStops;
8 10 10 tabs [Landroid/text/style/TabStopSpan;
11 40 10 tl Landroid/text/TextLine;
13 40 11 trailings [Z
15 21 12 offset I
22 40 12 wid [F
25 30 13 offset I
31 40 13 left I
32 40 14 right I
33 40 15 lineStartPos I
34 40 16 horizontal [F
35 39 17 offset I
MethodParameters:
Name Flags
line
clamped
primary
public float getLineLeft(int);
descriptor: (I)F
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphDirection:(I)I
istore 2
start local 2 1: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphAlignment:(I)Landroid/text/Layout$Alignment;
astore 3
start local 3 2: aload 3
getstatic android.text.Layout$Alignment.ALIGN_LEFT:Landroid/text/Layout$Alignment;
if_acmpne 4
3: fconst_0
freturn
4: StackMap locals: int android.text.Layout$Alignment
StackMap stack:
aload 3
getstatic android.text.Layout$Alignment.ALIGN_NORMAL:Landroid/text/Layout$Alignment;
if_acmpne 8
5: iload 2
iconst_m1
if_icmpne 7
6: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphRight:(I)I
i2f
aload 0
iload 1
invokevirtual android.text.Layout.getLineMax:(I)F
fsub
freturn
7: StackMap locals:
StackMap stack:
fconst_0
freturn
8: StackMap locals:
StackMap stack:
aload 3
getstatic android.text.Layout$Alignment.ALIGN_RIGHT:Landroid/text/Layout$Alignment;
if_acmpne 10
9: aload 0
getfield android.text.Layout.mWidth:I
i2f
aload 0
iload 1
invokevirtual android.text.Layout.getLineMax:(I)F
fsub
freturn
10: StackMap locals:
StackMap stack:
aload 3
getstatic android.text.Layout$Alignment.ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
if_acmpne 14
11: iload 2
iconst_m1
if_icmpne 13
12: fconst_0
freturn
13: StackMap locals:
StackMap stack:
aload 0
getfield android.text.Layout.mWidth:I
i2f
aload 0
iload 1
invokevirtual android.text.Layout.getLineMax:(I)F
fsub
freturn
14: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual android.text.Layout.getParagraphLeft:(I)I
istore 4
start local 4 15: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphRight:(I)I
istore 5
start local 5 16: aload 0
iload 1
invokevirtual android.text.Layout.getLineMax:(I)F
f2i
bipush -2
iand
istore 6
start local 6 17: iload 4
iload 5
iload 4
isub
iload 6
isub
iconst_2
idiv
iadd
i2f
freturn
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 18 0 this Landroid/text/Layout;
0 18 1 line I
1 18 2 dir I
2 18 3 align Landroid/text/Layout$Alignment;
15 18 4 left I
16 18 5 right I
17 18 6 max I
MethodParameters:
Name Flags
line
public float getLineRight(int);
descriptor: (I)F
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphDirection:(I)I
istore 2
start local 2 1: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphAlignment:(I)Landroid/text/Layout$Alignment;
astore 3
start local 3 2: aload 3
getstatic android.text.Layout$Alignment.ALIGN_LEFT:Landroid/text/Layout$Alignment;
if_acmpne 4
3: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphLeft:(I)I
i2f
aload 0
iload 1
invokevirtual android.text.Layout.getLineMax:(I)F
fadd
freturn
4: StackMap locals: int android.text.Layout$Alignment
StackMap stack:
aload 3
getstatic android.text.Layout$Alignment.ALIGN_NORMAL:Landroid/text/Layout$Alignment;
if_acmpne 8
5: iload 2
iconst_m1
if_icmpne 7
6: aload 0
getfield android.text.Layout.mWidth:I
i2f
freturn
7: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual android.text.Layout.getParagraphLeft:(I)I
i2f
aload 0
iload 1
invokevirtual android.text.Layout.getLineMax:(I)F
fadd
freturn
8: StackMap locals:
StackMap stack:
aload 3
getstatic android.text.Layout$Alignment.ALIGN_RIGHT:Landroid/text/Layout$Alignment;
if_acmpne 10
9: aload 0
getfield android.text.Layout.mWidth:I
i2f
freturn
10: StackMap locals:
StackMap stack:
aload 3
getstatic android.text.Layout$Alignment.ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
if_acmpne 14
11: iload 2
iconst_m1
if_icmpne 13
12: aload 0
iload 1
invokevirtual android.text.Layout.getLineMax:(I)F
freturn
13: StackMap locals:
StackMap stack:
aload 0
getfield android.text.Layout.mWidth:I
i2f
freturn
14: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual android.text.Layout.getParagraphLeft:(I)I
istore 4
start local 4 15: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphRight:(I)I
istore 5
start local 5 16: aload 0
iload 1
invokevirtual android.text.Layout.getLineMax:(I)F
f2i
bipush -2
iand
istore 6
start local 6 17: iload 5
iload 5
iload 4
isub
iload 6
isub
iconst_2
idiv
isub
i2f
freturn
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 18 0 this Landroid/text/Layout;
0 18 1 line I
1 18 2 dir I
2 18 3 align Landroid/text/Layout$Alignment;
15 18 4 left I
16 18 5 right I
17 18 6 max I
MethodParameters:
Name Flags
line
public float getLineMax(int);
descriptor: (I)F
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphLeadingMargin:(I)I
i2f
fstore 2
start local 2 1: aload 0
iload 1
iconst_0
invokevirtual android.text.Layout.getLineExtent:(IZ)F
fstore 3
start local 3 2: fload 2
fload 3
fconst_0
fcmpl
iflt 3
fload 3
goto 4
StackMap locals: android.text.Layout int float float
StackMap stack: float
3: fload 3
fneg
StackMap locals: android.text.Layout int float float
StackMap stack: float float
4: fadd
freturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/text/Layout;
0 5 1 line I
1 5 2 margin F
2 5 3 signedExtent F
MethodParameters:
Name Flags
line
public float getLineWidth(int);
descriptor: (I)F
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphLeadingMargin:(I)I
i2f
fstore 2
start local 2 1: aload 0
iload 1
iconst_1
invokevirtual android.text.Layout.getLineExtent:(IZ)F
fstore 3
start local 3 2: fload 2
fload 3
fconst_0
fcmpl
iflt 3
fload 3
goto 4
StackMap locals: android.text.Layout int float float
StackMap stack: float
3: fload 3
fneg
StackMap locals: android.text.Layout int float float
StackMap stack: float float
4: fadd
freturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/text/Layout;
0 5 1 line I
1 5 2 margin F
2 5 3 signedExtent F
MethodParameters:
Name Flags
line
private float getLineExtent(int, boolean);
descriptor: (IZ)F
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=12, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
invokevirtual android.text.Layout.getLineStart:(I)I
istore 3
start local 3 1: iload 2
ifeq 2
aload 0
iload 1
invokevirtual android.text.Layout.getLineEnd:(I)I
goto 3
StackMap locals: int
StackMap stack:
2: aload 0
iload 1
invokevirtual android.text.Layout.getLineVisibleEnd:(I)I
StackMap locals:
StackMap stack: int
3: istore 4
start local 4 4: aload 0
iload 1
invokevirtual android.text.Layout.getLineContainsTab:(I)Z
istore 5
start local 5 5: aconst_null
astore 6
start local 6 6: iload 5
ifeq 10
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
instanceof android.text.Spanned
ifeq 10
7: aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
checkcast android.text.Spanned
iload 3
iload 4
ldc Landroid/text/style/TabStopSpan;
invokestatic android.text.Layout.getParagraphSpans:(Landroid/text/Spanned;IILjava/lang/Class;)[Ljava/lang/Object;
checkcast android.text.style.TabStopSpan[]
astore 7
start local 7 8: aload 7
arraylength
ifle 10
9: new android.text.Layout$TabStops
dup
bipush 20
aload 7
invokespecial android.text.Layout$TabStops.<init>:(I[Ljava/lang/Object;)V
astore 6
end local 7 10: StackMap locals: int int android.text.Layout$TabStops
StackMap stack:
aload 0
iload 1
invokevirtual android.text.Layout.getLineDirections:(I)Landroid/text/Layout$Directions;
astore 7
start local 7 11: aload 7
ifnonnull 13
12: fconst_0
freturn
13: StackMap locals: android.text.Layout$Directions
StackMap stack:
aload 0
iload 1
invokevirtual android.text.Layout.getParagraphDirection:(I)I
istore 8
start local 8 14: invokestatic android.text.TextLine.obtain:()Landroid/text/TextLine;
astore 9
start local 9 15: aload 0
getfield android.text.Layout.mWorkPaint:Landroid/text/TextPaint;
astore 10
start local 10 16: aload 10
aload 0
getfield android.text.Layout.mPaint:Landroid/text/TextPaint;
invokevirtual android.text.TextPaint.set:(Landroid/text/TextPaint;)V
17: aload 10
aload 0
iload 1
invokevirtual android.text.Layout.getHyphen:(I)I
invokevirtual android.text.TextPaint.setHyphenEdit:(I)V
18: aload 9
aload 10
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
iload 3
iload 4
iload 8
aload 7
iload 5
aload 6
invokevirtual android.text.TextLine.set:(Landroid/text/TextPaint;Ljava/lang/CharSequence;IIILandroid/text/Layout$Directions;ZLandroid/text/Layout$TabStops;)V
19: aload 0
iload 1
invokevirtual android.text.Layout.isJustificationRequired:(I)Z
ifeq 21
20: aload 9
aload 0
iload 1
invokevirtual android.text.Layout.getJustifyWidth:(I)F
invokevirtual android.text.TextLine.justify:(F)V
21: StackMap locals: int android.text.TextLine android.text.TextPaint
StackMap stack:
aload 9
aconst_null
invokevirtual android.text.TextLine.metrics:(Landroid/graphics/Paint$FontMetricsInt;)F
fstore 11
start local 11 22: aload 9
invokestatic android.text.TextLine.recycle:(Landroid/text/TextLine;)Landroid/text/TextLine;
pop
23: fload 11
freturn
end local 11 end local 10 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 24 0 this Landroid/text/Layout;
0 24 1 line I
0 24 2 full Z
1 24 3 start I
4 24 4 end I
5 24 5 hasTabs Z
6 24 6 tabStops Landroid/text/Layout$TabStops;
8 10 7 tabs [Landroid/text/style/TabStopSpan;
11 24 7 directions Landroid/text/Layout$Directions;
14 24 8 dir I
15 24 9 tl Landroid/text/TextLine;
16 24 10 paint Landroid/text/TextPaint;
22 24 11 width F
MethodParameters:
Name Flags
line
full
private float getLineExtent(int, android.text.Layout$TabStops, boolean);
descriptor: (ILandroid/text/Layout$TabStops;Z)F
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=12, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
invokevirtual android.text.Layout.getLineStart:(I)I
istore 4
start local 4 1: iload 3
ifeq 2
aload 0
iload 1
invokevirtual android.text.Layout.getLineEnd:(I)I
goto 3
StackMap locals: int
StackMap stack:
2: aload 0
iload 1
invokevirtual android.text.Layout.getLineVisibleEnd:(I)I
StackMap locals:
StackMap stack: int
3: istore 5
start local 5 4: aload 0
iload 1
invokevirtual android.text.Layout.getLineContainsTab:(I)Z
istore 6
start local 6 5: aload 0
iload 1
invokevirtual android.text.Layout.getLineDirections:(I)Landroid/text/Layout$Directions;
astore 7
start local 7 6: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphDirection:(I)I
istore 8
start local 8 7: invokestatic android.text.TextLine.obtain:()Landroid/text/TextLine;
astore 9
start local 9 8: aload 0
getfield android.text.Layout.mWorkPaint:Landroid/text/TextPaint;
astore 10
start local 10 9: aload 10
aload 0
getfield android.text.Layout.mPaint:Landroid/text/TextPaint;
invokevirtual android.text.TextPaint.set:(Landroid/text/TextPaint;)V
10: aload 10
aload 0
iload 1
invokevirtual android.text.Layout.getHyphen:(I)I
invokevirtual android.text.TextPaint.setHyphenEdit:(I)V
11: aload 9
aload 10
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
iload 4
iload 5
iload 8
aload 7
iload 6
aload 2
invokevirtual android.text.TextLine.set:(Landroid/text/TextPaint;Ljava/lang/CharSequence;IIILandroid/text/Layout$Directions;ZLandroid/text/Layout$TabStops;)V
12: aload 0
iload 1
invokevirtual android.text.Layout.isJustificationRequired:(I)Z
ifeq 14
13: aload 9
aload 0
iload 1
invokevirtual android.text.Layout.getJustifyWidth:(I)F
invokevirtual android.text.TextLine.justify:(F)V
14: StackMap locals: android.text.Layout int android.text.Layout$TabStops int int int int android.text.Layout$Directions int android.text.TextLine android.text.TextPaint
StackMap stack:
aload 9
aconst_null
invokevirtual android.text.TextLine.metrics:(Landroid/graphics/Paint$FontMetricsInt;)F
fstore 11
start local 11 15: aload 9
invokestatic android.text.TextLine.recycle:(Landroid/text/TextLine;)Landroid/text/TextLine;
pop
16: fload 11
freturn
end local 11 end local 10 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 17 0 this Landroid/text/Layout;
0 17 1 line I
0 17 2 tabStops Landroid/text/Layout$TabStops;
0 17 3 full Z
1 17 4 start I
4 17 5 end I
5 17 6 hasTabs Z
6 17 7 directions Landroid/text/Layout$Directions;
7 17 8 dir I
8 17 9 tl Landroid/text/TextLine;
9 17 10 paint Landroid/text/TextPaint;
15 17 11 width F
MethodParameters:
Name Flags
line
tabStops
full
public int getLineForVertical(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual android.text.Layout.getLineCount:()I
istore 2
start local 2 1: iconst_m1
istore 3
start local 3 2: goto 7
3: StackMap locals: int int
StackMap stack:
iload 2
iload 3
iadd
iconst_2
idiv
istore 4
start local 4 4: aload 0
iload 4
invokevirtual android.text.Layout.getLineTop:(I)I
iload 1
if_icmple 6
5: iload 4
istore 2
goto 7
6: StackMap locals: int
StackMap stack:
iload 4
istore 3
end local 4 7: StackMap locals:
StackMap stack:
iload 2
iload 3
isub
iconst_1
if_icmpgt 3
8: iload 3
ifge 10
9: iconst_0
ireturn
10: StackMap locals:
StackMap stack:
iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Landroid/text/Layout;
0 11 1 vertical I
1 11 2 high I
2 11 3 low I
4 7 4 guess I
MethodParameters:
Name Flags
vertical
public int getLineForOffset(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual android.text.Layout.getLineCount:()I
istore 2
start local 2 1: iconst_m1
istore 3
start local 3 2: goto 7
3: StackMap locals: int int
StackMap stack:
iload 2
iload 3
iadd
iconst_2
idiv
istore 4
start local 4 4: aload 0
iload 4
invokevirtual android.text.Layout.getLineStart:(I)I
iload 1
if_icmple 6
5: iload 4
istore 2
goto 7
6: StackMap locals: int
StackMap stack:
iload 4
istore 3
end local 4 7: StackMap locals:
StackMap stack:
iload 2
iload 3
isub
iconst_1
if_icmpgt 3
8: iload 3
ifge 10
9: iconst_0
ireturn
10: StackMap locals:
StackMap stack:
iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Landroid/text/Layout;
0 11 1 offset I
1 11 2 high I
2 11 3 low I
4 7 4 guess I
MethodParameters:
Name Flags
offset
public int getOffsetForHorizontal(int, float);
descriptor: (IF)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
fload 2
iconst_1
invokevirtual android.text.Layout.getOffsetForHorizontal:(IFZ)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 line I
0 1 2 horiz F
MethodParameters:
Name Flags
line
horiz
public int getOffsetForHorizontal(int, float, boolean);
descriptor: (IFZ)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=23, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
invokevirtual android.text.Layout.getLineEnd:(I)I
istore 4
start local 4 1: aload 0
iload 1
invokevirtual android.text.Layout.getLineStart:(I)I
istore 5
start local 5 2: aload 0
iload 1
invokevirtual android.text.Layout.getLineDirections:(I)Landroid/text/Layout$Directions;
astore 6
start local 6 3: invokestatic android.text.TextLine.obtain:()Landroid/text/TextLine;
astore 7
start local 7 4: aload 7
aload 0
getfield android.text.Layout.mPaint:Landroid/text/TextPaint;
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
iload 5
iload 4
aload 0
iload 1
invokevirtual android.text.Layout.getParagraphDirection:(I)I
aload 6
5: iconst_0
aconst_null
6: invokevirtual android.text.TextLine.set:(Landroid/text/TextPaint;Ljava/lang/CharSequence;IIILandroid/text/Layout$Directions;ZLandroid/text/Layout$TabStops;)V
7: new android.text.Layout$HorizontalMeasurementProvider
dup
aload 0
iload 1
iload 3
invokespecial android.text.Layout$HorizontalMeasurementProvider.<init>:(Landroid/text/Layout;IZ)V
8: astore 8
start local 8 9: iload 1
aload 0
invokevirtual android.text.Layout.getLineCount:()I
iconst_1
isub
if_icmpne 12
10: iload 4
istore 9
start local 9 11: goto 18
end local 9 12: StackMap locals: android.text.Layout int float int int int android.text.Layout$Directions android.text.TextLine android.text.Layout$HorizontalMeasurementProvider
StackMap stack:
aload 7
iload 4
iload 5
isub
13: aload 0
iload 4
iconst_1
isub
invokevirtual android.text.Layout.isRtlCharAt:(I)Z
ifeq 14
iconst_0
goto 15
StackMap locals: android.text.Layout int float int int int android.text.Layout$Directions android.text.TextLine android.text.Layout$HorizontalMeasurementProvider
StackMap stack: android.text.TextLine int
14: iconst_1
15: StackMap locals: android.text.Layout int float int int int android.text.Layout$Directions android.text.TextLine android.text.Layout$HorizontalMeasurementProvider
StackMap stack: android.text.TextLine int int
invokevirtual android.text.TextLine.getOffsetToLeftRightOf:(IZ)I
16: iload 5
17: iadd
istore 9
start local 9 18: StackMap locals: int
StackMap stack:
iload 5
istore 10
start local 10 19: aload 8
iload 5
invokevirtual android.text.Layout$HorizontalMeasurementProvider.get:(I)F
fload 2
fsub
invokestatic java.lang.Math.abs:(F)F
fstore 11
start local 11 20: iconst_0
istore 12
start local 12 21: goto 64
22: StackMap locals: int float int
StackMap stack:
iload 5
aload 6
getfield android.text.Layout$Directions.mDirections:[I
iload 12
iaload
iadd
istore 13
start local 13 23: iload 13
aload 6
getfield android.text.Layout$Directions.mDirections:[I
iload 12
iconst_1
iadd
iaload
ldc 67108863
iand
iadd
istore 14
start local 14 24: aload 6
getfield android.text.Layout$Directions.mDirections:[I
iload 12
iconst_1
iadd
iaload
ldc 67108864
iand
ifeq 25
iconst_1
goto 26
StackMap locals: int int
StackMap stack:
25: iconst_0
StackMap locals:
StackMap stack: int
26: istore 15
start local 15 27: iload 15
ifeq 28
iconst_m1
goto 29
StackMap locals: int
StackMap stack:
28: iconst_1
StackMap locals:
StackMap stack: int
29: istore 16
start local 16 30: iload 14
iload 9
if_icmple 32
31: iload 9
istore 14
32: StackMap locals: int
StackMap stack:
iload 14
iconst_1
isub
iconst_1
iadd
istore 17
start local 17 33: iload 13
iconst_1
iadd
iconst_1
isub
istore 18
start local 18 34: goto 41
35: StackMap locals: int int
StackMap stack:
iload 17
iload 18
iadd
iconst_2
idiv
istore 19
start local 19 36: aload 0
iload 19
invokevirtual android.text.Layout.getOffsetAtStartOf:(I)I
istore 20
start local 20 37: aload 8
iload 20
invokevirtual android.text.Layout$HorizontalMeasurementProvider.get:(I)F
iload 16
i2f
fmul
fload 2
iload 16
i2f
fmul
fcmpl
iflt 40
38: iload 19
istore 17
39: goto 41
40: StackMap locals: int int
StackMap stack:
iload 19
istore 18
end local 20 end local 19 41: StackMap locals:
StackMap stack:
iload 17
iload 18
isub
iconst_1
if_icmpgt 35
42: iload 18
iload 13
iconst_1
iadd
if_icmpge 44
43: iload 13
iconst_1
iadd
istore 18
44: StackMap locals:
StackMap stack:
iload 18
iload 14
if_icmpge 59
45: aload 7
iload 18
iload 5
isub
iload 15
invokevirtual android.text.TextLine.getOffsetToLeftRightOf:(IZ)I
iload 5
iadd
istore 20
start local 20 46: aload 7
iload 20
iload 5
isub
iload 15
ifeq 47
iconst_0
goto 48
StackMap locals: android.text.Layout int float int int int android.text.Layout$Directions android.text.TextLine android.text.Layout$HorizontalMeasurementProvider int int float int int int int int int int top int
StackMap stack: android.text.TextLine int
47: iconst_1
StackMap locals: android.text.Layout int float int int int android.text.Layout$Directions android.text.TextLine android.text.Layout$HorizontalMeasurementProvider int int float int int int int int int int top int
StackMap stack: android.text.TextLine int int
48: invokevirtual android.text.TextLine.getOffsetToLeftRightOf:(IZ)I
iload 5
iadd
istore 18
49: iload 18
iload 13
if_icmplt 59
iload 18
iload 14
if_icmpge 59
50: aload 8
iload 18
invokevirtual android.text.Layout$HorizontalMeasurementProvider.get:(I)F
fload 2
fsub
invokestatic java.lang.Math.abs:(F)F
fstore 21
start local 21 51: iload 20
iload 14
if_icmpge 56
52: aload 8
iload 20
invokevirtual android.text.Layout$HorizontalMeasurementProvider.get:(I)F
fload 2
fsub
invokestatic java.lang.Math.abs:(F)F
fstore 22
start local 22 53: fload 22
fload 21
fcmpg
ifge 56
54: fload 22
fstore 21
55: iload 20
istore 18
end local 22 56: StackMap locals: float
StackMap stack:
fload 21
fload 11
fcmpg
ifge 59
57: fload 21
fstore 11
58: iload 18
istore 10
end local 21 end local 20 59: StackMap locals: android.text.Layout int float int int int android.text.Layout$Directions android.text.TextLine android.text.Layout$HorizontalMeasurementProvider int int float int int int int int int int
StackMap stack:
aload 8
iload 13
invokevirtual android.text.Layout$HorizontalMeasurementProvider.get:(I)F
fload 2
fsub
invokestatic java.lang.Math.abs:(F)F
fstore 20
start local 20 60: fload 20
fload 11
fcmpg
ifge 63
61: fload 20
fstore 11
62: iload 13
istore 10
end local 20 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 63: StackMap locals: android.text.Layout int float int int int android.text.Layout$Directions android.text.TextLine android.text.Layout$HorizontalMeasurementProvider int int float int
StackMap stack:
iinc 12 2
StackMap locals:
StackMap stack:
64: iload 12
aload 6
getfield android.text.Layout$Directions.mDirections:[I
arraylength
if_icmplt 22
end local 12 65: aload 8
iload 9
invokevirtual android.text.Layout$HorizontalMeasurementProvider.get:(I)F
fload 2
fsub
invokestatic java.lang.Math.abs:(F)F
fstore 12
start local 12 66: fload 12
fload 11
fcmpg
ifgt 68
67: iload 9
istore 10
68: StackMap locals: android.text.Layout int float int int int android.text.Layout$Directions android.text.TextLine android.text.Layout$HorizontalMeasurementProvider int int float float
StackMap stack:
aload 7
invokestatic android.text.TextLine.recycle:(Landroid/text/TextLine;)Landroid/text/TextLine;
pop
69: iload 10
ireturn
end local 12 end local 11 end local 10 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 70 0 this Landroid/text/Layout;
0 70 1 line I
0 70 2 horiz F
0 70 3 primary Z
1 70 4 lineEndOffset I
2 70 5 lineStartOffset I
3 70 6 dirs Landroid/text/Layout$Directions;
4 70 7 tl Landroid/text/TextLine;
9 70 8 horizontal Landroid/text/Layout$HorizontalMeasurementProvider;
11 12 9 max I
18 70 9 max I
19 70 10 best I
20 70 11 bestdist F
21 65 12 i I
23 63 13 here I
24 63 14 there I
27 63 15 isRtl Z
30 63 16 swap I
33 63 17 high I
34 63 18 low I
36 41 19 guess I
37 41 20 adguess I
46 59 20 aft I
51 59 21 dist F
53 56 22 other F
60 63 20 dist F
66 70 12 dist F
MethodParameters:
Name Flags
line
horiz
primary
public final int getLineEnd(int);
descriptor: (I)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_1
iadd
invokevirtual android.text.Layout.getLineStart:(I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 line I
MethodParameters:
Name Flags
line
public int getLineVisibleEnd(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
aload 0
iload 1
invokevirtual android.text.Layout.getLineStart:(I)I
aload 0
iload 1
iconst_1
iadd
invokevirtual android.text.Layout.getLineStart:(I)I
invokevirtual android.text.Layout.getLineVisibleEnd:(III)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 line I
MethodParameters:
Name Flags
line
private int getLineVisibleEnd(int, int, int);
descriptor: (III)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
astore 4
start local 4 1: iload 1
aload 0
invokevirtual android.text.Layout.getLineCount:()I
iconst_1
isub
if_icmpne 9
2: iload 3
ireturn
3: StackMap locals: java.lang.CharSequence
StackMap stack:
aload 4
iload 3
iconst_1
isub
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 5
start local 5 4: iload 5
bipush 10
if_icmpne 6
5: iload 3
iconst_1
isub
ireturn
6: StackMap locals: int
StackMap stack:
iload 5
invokestatic android.text.TextLine.isLineEndSpace:(C)Z
ifne 8
7: goto 10
8: StackMap locals:
StackMap stack:
iinc 3 -1
end local 5 StackMap locals:
StackMap stack:
9: iload 3
iload 2
if_icmpgt 3
10: StackMap locals:
StackMap stack:
iload 3
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Landroid/text/Layout;
0 11 1 line I
0 11 2 start I
0 11 3 end I
1 11 4 text Ljava/lang/CharSequence;
4 9 5 ch C
MethodParameters:
Name Flags
line
start
end
public final int getLineBottom(int);
descriptor: (I)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_1
iadd
invokevirtual android.text.Layout.getLineTop:(I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 line I
MethodParameters:
Name Flags
line
public final int getLineBottomWithoutSpacing(int);
descriptor: (I)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_1
iadd
invokevirtual android.text.Layout.getLineTop:(I)I
aload 0
iload 1
invokevirtual android.text.Layout.getLineExtra:(I)I
isub
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 line I
MethodParameters:
Name Flags
line
public final int getLineBaseline(int);
descriptor: (I)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_1
iadd
invokevirtual android.text.Layout.getLineTop:(I)I
aload 0
iload 1
invokevirtual android.text.Layout.getLineDescent:(I)I
isub
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 line I
MethodParameters:
Name Flags
line
public final int getLineAscent(int);
descriptor: (I)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual android.text.Layout.getLineTop:(I)I
aload 0
iload 1
iconst_1
iadd
invokevirtual android.text.Layout.getLineTop:(I)I
aload 0
iload 1
invokevirtual android.text.Layout.getLineDescent:(I)I
isub
isub
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 line I
MethodParameters:
Name Flags
line
public int getLineExtra(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 line I
MethodParameters:
Name Flags
line
public int getOffsetToLeftOf(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_1
invokevirtual android.text.Layout.getOffsetToLeftRightOf:(IZ)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 offset I
MethodParameters:
Name Flags
offset
public int getOffsetToRightOf(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_0
invokevirtual android.text.Layout.getOffsetToLeftRightOf:(IZ)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
0 1 1 offset I
MethodParameters:
Name Flags
offset
private int getOffsetToLeftRightOf(int, boolean);
descriptor: (IZ)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
invokevirtual android.text.Layout.getLineForOffset:(I)I
istore 3
start local 3 1: aload 0
iload 3
invokevirtual android.text.Layout.getLineStart:(I)I
istore 4
start local 4 2: aload 0
iload 3
invokevirtual android.text.Layout.getLineEnd:(I)I
istore 5
start local 5 3: aload 0
iload 3
invokevirtual android.text.Layout.getParagraphDirection:(I)I
istore 6
start local 6 4: iconst_0
istore 7
start local 7 5: iload 2
iload 6
iconst_m1
if_icmpne 6
iconst_1
goto 7
StackMap locals: android.text.Layout int int int int int int int
StackMap stack: int
6: iconst_0
StackMap locals: android.text.Layout int int int int int int int
StackMap stack: int int
7: if_icmpne 8
iconst_1
goto 9
StackMap locals:
StackMap stack:
8: iconst_0
StackMap locals:
StackMap stack: int
9: istore 8
start local 8 10: iload 8
ifeq 17
11: iload 1
iload 5
if_icmpne 23
12: iload 3
aload 0
invokevirtual android.text.Layout.getLineCount:()I
iconst_1
isub
if_icmpge 16
13: iconst_1
istore 7
14: iinc 3 1
15: goto 23
16: StackMap locals: int
StackMap stack:
iload 1
ireturn
17: StackMap locals:
StackMap stack:
iload 1
iload 4
if_icmpne 23
18: iload 3
ifle 22
19: iconst_1
istore 7
20: iinc 3 -1
21: goto 23
22: StackMap locals:
StackMap stack:
iload 1
ireturn
23: StackMap locals:
StackMap stack:
iload 7
ifeq 32
24: aload 0
iload 3
invokevirtual android.text.Layout.getLineStart:(I)I
istore 4
25: aload 0
iload 3
invokevirtual android.text.Layout.getLineEnd:(I)I
istore 5
26: aload 0
iload 3
invokevirtual android.text.Layout.getParagraphDirection:(I)I
istore 9
start local 9 27: iload 9
iload 6
if_icmpeq 32
28: iload 2
ifeq 29
iconst_0
goto 30
StackMap locals: int
StackMap stack:
29: iconst_1
StackMap locals:
StackMap stack: int
30: istore 2
31: iload 9
istore 6
end local 9 32: StackMap locals:
StackMap stack:
aload 0
iload 3
invokevirtual android.text.Layout.getLineDirections:(I)Landroid/text/Layout$Directions;
astore 9
start local 9 33: invokestatic android.text.TextLine.obtain:()Landroid/text/TextLine;
astore 10
start local 10 34: aload 10
aload 0
getfield android.text.Layout.mPaint:Landroid/text/TextPaint;
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
iload 4
iload 5
iload 6
aload 9
iconst_0
aconst_null
invokevirtual android.text.TextLine.set:(Landroid/text/TextPaint;Ljava/lang/CharSequence;IIILandroid/text/Layout$Directions;ZLandroid/text/Layout$TabStops;)V
35: iload 4
aload 10
iload 1
iload 4
isub
iload 2
invokevirtual android.text.TextLine.getOffsetToLeftRightOf:(IZ)I
iadd
istore 1
36: aload 10
invokestatic android.text.TextLine.recycle:(Landroid/text/TextLine;)Landroid/text/TextLine;
pop
37: iload 1
ireturn
end local 10 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 38 0 this Landroid/text/Layout;
0 38 1 caret I
0 38 2 toLeft Z
1 38 3 line I
2 38 4 lineStart I
3 38 5 lineEnd I
4 38 6 lineDir I
5 38 7 lineChanged Z
10 38 8 advance Z
27 32 9 newDir I
33 38 9 directions Landroid/text/Layout$Directions;
34 38 10 tl Landroid/text/TextLine;
MethodParameters:
Name Flags
caret
toLeft
private int getOffsetAtStartOf(int);
descriptor: (I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: iload 1
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
astore 2
start local 2 3: aload 2
iload 1
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 3
start local 3 4: iload 3
ldc 56320
if_icmplt 8
iload 3
ldc 57343
if_icmpgt 8
5: aload 2
iload 1
iconst_1
isub
invokeinterface java.lang.CharSequence.charAt:(I)C
istore 4
start local 4 6: iload 4
ldc 55296
if_icmplt 8
iload 4
ldc 56319
if_icmpgt 8
7: iinc 1 -1
end local 4 8: StackMap locals: java.lang.CharSequence int
StackMap stack:
aload 0
getfield android.text.Layout.mSpannedText:Z
ifeq 20
9: aload 2
checkcast android.text.Spanned
iload 1
iload 1
10: ldc Landroid/text/style/ReplacementSpan;
11: invokeinterface android.text.Spanned.getSpans:(IILjava/lang/Class;)[Ljava/lang/Object;
checkcast android.text.style.ReplacementSpan[]
astore 4
start local 4 12: iconst_0
istore 5
start local 5 13: goto 19
14: StackMap locals: android.text.style.ReplacementSpan[] int
StackMap stack:
aload 2
checkcast android.text.Spanned
aload 4
iload 5
aaload
invokeinterface android.text.Spanned.getSpanStart:(Ljava/lang/Object;)I
istore 6
start local 6 15: aload 2
checkcast android.text.Spanned
aload 4
iload 5
aaload
invokeinterface android.text.Spanned.getSpanEnd:(Ljava/lang/Object;)I
istore 7
start local 7 16: iload 6
iload 1
if_icmpge 18
iload 7
iload 1
if_icmple 18
17: iload 6
istore 1
end local 7 end local 6 18: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
19: iload 5
aload 4
arraylength
if_icmplt 14
end local 5 end local 4 20: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Landroid/text/Layout;
0 21 1 offset I
3 21 2 text Ljava/lang/CharSequence;
4 21 3 c C
6 8 4 c1 C
12 20 4 spans [Landroid/text/style/ReplacementSpan;
13 20 5 i I
15 18 6 start I
16 18 7 end I
MethodParameters:
Name Flags
offset
public boolean shouldClampCursor(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: invokestatic android.text.Layout.$SWITCH_TABLE$android$text$Layout$Alignment:()[I
aload 0
iload 1
invokevirtual android.text.Layout.getParagraphAlignment:(I)Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout$Alignment.ordinal:()I
iaload
tableswitch { // 1 - 4
1: 2
2: 4
3: 4
4: 1
default: 4
}
1: StackMap locals:
StackMap stack:
iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual android.text.Layout.getParagraphDirection:(I)I
ifle 3
iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/text/Layout;
0 5 1 line I
MethodParameters:
Name Flags
line
public void getCursorPath(int, android.graphics.Path, java.lang.CharSequence);
descriptor: (ILandroid/graphics/Path;Ljava/lang/CharSequence;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=13, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
invokevirtual android.graphics.Path.reset:()V
1: aload 0
iload 1
invokevirtual android.text.Layout.getLineForOffset:(I)I
istore 4
start local 4 2: aload 0
iload 4
invokevirtual android.text.Layout.getLineTop:(I)I
istore 5
start local 5 3: aload 0
iload 4
invokevirtual android.text.Layout.getLineBottomWithoutSpacing:(I)I
istore 6
start local 6 4: aload 0
iload 4
invokevirtual android.text.Layout.shouldClampCursor:(I)Z
istore 7
start local 7 5: aload 0
iload 1
iload 7
invokevirtual android.text.Layout.getPrimaryHorizontal:(IZ)F
ldc 0.5
fsub
fstore 8
start local 8 6: aload 0
iload 1
invokevirtual android.text.Layout.isLevelBoundary:(I)Z
ifeq 7
aload 0
iload 1
iload 7
invokevirtual android.text.Layout.getSecondaryHorizontal:(IZ)F
ldc 0.5
fsub
goto 8
StackMap locals: android.text.Layout int android.graphics.Path java.lang.CharSequence int int int int float
StackMap stack:
7: fload 8
StackMap locals:
StackMap stack: float
8: fstore 9
start local 9 9: aload 3
iconst_1
invokestatic android.text.method.TextKeyListener.getMetaState:(Ljava/lang/CharSequence;I)I
10: aload 3
sipush 2048
invokestatic android.text.method.TextKeyListener.getMetaState:(Ljava/lang/CharSequence;I)I
11: ior
istore 10
start local 10 12: aload 3
iconst_2
invokestatic android.text.method.TextKeyListener.getMetaState:(Ljava/lang/CharSequence;I)I
istore 11
start local 11 13: iconst_0
istore 12
start local 12 14: iload 10
ifne 15
iload 11
ifeq 20
15: StackMap locals: android.text.Layout int android.graphics.Path java.lang.CharSequence int int int int float float int int int
StackMap stack:
iload 6
iload 5
isub
iconst_2
ishr
istore 12
16: iload 11
ifeq 18
17: iload 5
iload 12
iadd
istore 5
18: StackMap locals:
StackMap stack:
iload 10
ifeq 20
19: iload 6
iload 12
isub
istore 6
20: StackMap locals:
StackMap stack:
fload 8
ldc 0.5
fcmpg
ifge 22
21: ldc 0.5
fstore 8
22: StackMap locals:
StackMap stack:
fload 9
ldc 0.5
fcmpg
ifge 24
23: ldc 0.5
fstore 9
24: StackMap locals:
StackMap stack:
fload 8
fload 9
invokestatic java.lang.Float.compare:(FF)I
ifne 28
25: aload 2
fload 8
iload 5
i2f
invokevirtual android.graphics.Path.moveTo:(FF)V
26: aload 2
fload 8
iload 6
i2f
invokevirtual android.graphics.Path.lineTo:(FF)V
27: goto 32
28: StackMap locals:
StackMap stack:
aload 2
fload 8
iload 5
i2f
invokevirtual android.graphics.Path.moveTo:(FF)V
29: aload 2
fload 8
iload 5
iload 6
iadd
iconst_1
ishr
i2f
invokevirtual android.graphics.Path.lineTo:(FF)V
30: aload 2
fload 9
iload 5
iload 6
iadd
iconst_1
ishr
i2f
invokevirtual android.graphics.Path.moveTo:(FF)V
31: aload 2
fload 9
iload 6
i2f
invokevirtual android.graphics.Path.lineTo:(FF)V
32: StackMap locals:
StackMap stack:
iload 10
iconst_2
if_icmpne 38
33: aload 2
fload 9
iload 6
i2f
invokevirtual android.graphics.Path.moveTo:(FF)V
34: aload 2
fload 9
iload 12
i2f
fsub
iload 6
iload 12
iadd
i2f
invokevirtual android.graphics.Path.lineTo:(FF)V
35: aload 2
fload 9
iload 6
i2f
invokevirtual android.graphics.Path.lineTo:(FF)V
36: aload 2
fload 9
iload 12
i2f
fadd
iload 6
iload 12
iadd
i2f
invokevirtual android.graphics.Path.lineTo:(FF)V
37: goto 45
StackMap locals:
StackMap stack:
38: iload 10
iconst_1
if_icmpne 45
39: aload 2
fload 9
iload 6
i2f
invokevirtual android.graphics.Path.moveTo:(FF)V
40: aload 2
fload 9
iload 12
i2f
fsub
iload 6
iload 12
iadd
i2f
invokevirtual android.graphics.Path.lineTo:(FF)V
41: aload 2
fload 9
iload 12
i2f
fsub
iload 6
iload 12
iadd
i2f
ldc 0.5
fsub
invokevirtual android.graphics.Path.moveTo:(FF)V
42: aload 2
fload 9
iload 12
i2f
fadd
iload 6
iload 12
iadd
i2f
ldc 0.5
fsub
invokevirtual android.graphics.Path.lineTo:(FF)V
43: aload 2
fload 9
iload 12
i2f
fadd
iload 6
iload 12
iadd
i2f
invokevirtual android.graphics.Path.moveTo:(FF)V
44: aload 2
fload 9
iload 6
i2f
invokevirtual android.graphics.Path.lineTo:(FF)V
45: StackMap locals:
StackMap stack:
iload 11
iconst_2
if_icmpne 51
46: aload 2
fload 8
iload 5
i2f
invokevirtual android.graphics.Path.moveTo:(FF)V
47: aload 2
fload 8
iload 12
i2f
fsub
iload 5
iload 12
isub
i2f
invokevirtual android.graphics.Path.lineTo:(FF)V
48: aload 2
fload 8
iload 5
i2f
invokevirtual android.graphics.Path.lineTo:(FF)V
49: aload 2
fload 8
iload 12
i2f
fadd
iload 5
iload 12
isub
i2f
invokevirtual android.graphics.Path.lineTo:(FF)V
50: goto 58
StackMap locals:
StackMap stack:
51: iload 11
iconst_1
if_icmpne 58
52: aload 2
fload 8
iload 5
i2f
invokevirtual android.graphics.Path.moveTo:(FF)V
53: aload 2
fload 8
iload 12
i2f
fsub
iload 5
iload 12
isub
i2f
invokevirtual android.graphics.Path.lineTo:(FF)V
54: aload 2
fload 8
iload 12
i2f
fsub
iload 5
iload 12
isub
i2f
ldc 0.5
fadd
invokevirtual android.graphics.Path.moveTo:(FF)V
55: aload 2
fload 8
iload 12
i2f
fadd
iload 5
iload 12
isub
i2f
ldc 0.5
fadd
invokevirtual android.graphics.Path.lineTo:(FF)V
56: aload 2
fload 8
iload 12
i2f
fadd
iload 5
iload 12
isub
i2f
invokevirtual android.graphics.Path.moveTo:(FF)V
57: aload 2
fload 8
iload 5
i2f
invokevirtual android.graphics.Path.lineTo:(FF)V
58: StackMap locals:
StackMap stack:
return
end local 12 end local 11 end local 10 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 59 0 this Landroid/text/Layout;
0 59 1 point I
0 59 2 dest Landroid/graphics/Path;
0 59 3 editingBuffer Ljava/lang/CharSequence;
2 59 4 line I
3 59 5 top I
4 59 6 bottom I
5 59 7 clamped Z
6 59 8 h1 F
9 59 9 h2 F
12 59 10 caps I
13 59 11 fn I
14 59 12 dist I
MethodParameters:
Name Flags
point final
dest final
editingBuffer final
private void addSelection(int, int, int, int, int, android.text.Layout$SelectionRectangleConsumer);
descriptor: (IIIIILandroid/text/Layout$SelectionRectangleConsumer;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=20, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
iload 1
invokevirtual android.text.Layout.getLineStart:(I)I
istore 7
start local 7 1: aload 0
iload 1
invokevirtual android.text.Layout.getLineEnd:(I)I
istore 8
start local 8 2: aload 0
iload 1
invokevirtual android.text.Layout.getLineDirections:(I)Landroid/text/Layout$Directions;
astore 9
start local 9 3: iload 8
iload 7
if_icmple 5
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
iload 8
iconst_1
isub
invokeinterface java.lang.CharSequence.charAt:(I)C
bipush 10
if_icmpne 5
4: iinc 8 -1
5: StackMap locals: int int android.text.Layout$Directions
StackMap stack:
iconst_0
istore 10
start local 10 6: goto 25
7: StackMap locals: int
StackMap stack:
iload 7
aload 9
getfield android.text.Layout$Directions.mDirections:[I
iload 10
iaload
iadd
istore 11
start local 11 8: iload 11
aload 9
getfield android.text.Layout$Directions.mDirections:[I
iload 10
iconst_1
iadd
iaload
ldc 67108863
iand
iadd
istore 12
start local 12 9: iload 12
iload 8
if_icmple 11
10: iload 8
istore 12
11: StackMap locals: int int
StackMap stack:
iload 2
iload 12
if_icmpgt 24
iload 3
iload 11
if_icmplt 24
12: iload 2
iload 11
invokestatic java.lang.Math.max:(II)I
istore 13
start local 13 13: iload 3
iload 12
invokestatic java.lang.Math.min:(II)I
istore 14
start local 14 14: iload 13
iload 14
if_icmpeq 24
15: aload 0
iload 13
iconst_0
iload 1
iconst_0
invokevirtual android.text.Layout.getHorizontal:(IZIZ)F
fstore 15
start local 15 16: aload 0
iload 14
iconst_1
iload 1
iconst_0
invokevirtual android.text.Layout.getHorizontal:(IZIZ)F
fstore 16
start local 16 17: fload 15
fload 16
invokestatic java.lang.Math.min:(FF)F
fstore 17
start local 17 18: fload 15
fload 16
invokestatic java.lang.Math.max:(FF)F
fstore 18
start local 18 19: aload 9
getfield android.text.Layout$Directions.mDirections:[I
iload 10
iconst_1
iadd
iaload
ldc 67108864
iand
ifeq 21
20: iconst_0
goto 22
21: StackMap locals: android.text.Layout int int int int int android.text.Layout$SelectionRectangleConsumer int int android.text.Layout$Directions int int int int int float float float float
StackMap stack:
iconst_1
22: StackMap locals:
StackMap stack: int
istore 19
start local 19 23: aload 6
fload 17
iload 4
i2f
fload 18
iload 5
i2f
iload 19
invokeinterface android.text.Layout$SelectionRectangleConsumer.accept:(FFFFI)V
end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 24: StackMap locals: android.text.Layout int int int int int android.text.Layout$SelectionRectangleConsumer int int android.text.Layout$Directions int
StackMap stack:
iinc 10 2
StackMap locals:
StackMap stack:
25: iload 10
aload 9
getfield android.text.Layout$Directions.mDirections:[I
arraylength
if_icmplt 7
end local 10 26: 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 27 0 this Landroid/text/Layout;
0 27 1 line I
0 27 2 start I
0 27 3 end I
0 27 4 top I
0 27 5 bottom I
0 27 6 consumer Landroid/text/Layout$SelectionRectangleConsumer;
1 27 7 linestart I
2 27 8 lineend I
3 27 9 dirs Landroid/text/Layout$Directions;
6 26 10 i I
8 24 11 here I
9 24 12 there I
13 24 13 st I
14 24 14 en I
16 24 15 h1 F
17 24 16 h2 F
18 24 17 left F
19 24 18 right F
23 24 19 layout I
MethodParameters:
Name Flags
line
start
end
top
bottom
consumer
public void getSelectionPath(int, int, android.graphics.Path);
descriptor: (IILandroid/graphics/Path;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokevirtual android.graphics.Path.reset:()V
1: aload 0
iload 1
iload 2
aload 3
invokedynamic accept(Landroid/graphics/Path;)Landroid/text/Layout$SelectionRectangleConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(FFFFI)V
android/text/Layout.lambda$0(Landroid/graphics/Path;FFFFI)V (6)
(FFFFI)V
invokevirtual android.text.Layout.getSelection:(IILandroid/text/Layout$SelectionRectangleConsumer;)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/text/Layout;
0 3 1 start I
0 3 2 end I
0 3 3 dest Landroid/graphics/Path;
MethodParameters:
Name Flags
start
end
dest
public final void getSelection(int, int, android.text.Layout$SelectionRectangleConsumer);
descriptor: (IILandroid/text/Layout$SelectionRectangleConsumer;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=7, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 1
iload 2
if_icmpne 2
1: return
2: StackMap locals:
StackMap stack:
iload 2
iload 1
if_icmpge 6
3: iload 2
istore 4
start local 4 4: iload 1
istore 2
5: iload 4
istore 1
end local 4 6: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual android.text.Layout.getLineForOffset:(I)I
istore 4
start local 4 7: aload 0
iload 2
invokevirtual android.text.Layout.getLineForOffset:(I)I
istore 5
start local 5 8: aload 0
iload 4
invokevirtual android.text.Layout.getLineTop:(I)I
istore 6
start local 6 9: aload 0
iload 5
invokevirtual android.text.Layout.getLineBottomWithoutSpacing:(I)I
istore 7
start local 7 10: iload 4
iload 5
if_icmpne 13
11: aload 0
iload 4
iload 1
iload 2
iload 6
iload 7
aload 3
invokevirtual android.text.Layout.addSelection:(IIIIILandroid/text/Layout$SelectionRectangleConsumer;)V
12: goto 46
13: StackMap locals: android.text.Layout int int android.text.Layout$SelectionRectangleConsumer int int int int
StackMap stack:
aload 0
getfield android.text.Layout.mWidth:I
i2f
fstore 8
start local 8 14: aload 0
iload 4
iload 1
aload 0
iload 4
invokevirtual android.text.Layout.getLineEnd:(I)I
15: iload 6
aload 0
iload 4
invokevirtual android.text.Layout.getLineBottom:(I)I
aload 3
16: invokevirtual android.text.Layout.addSelection:(IIIIILandroid/text/Layout$SelectionRectangleConsumer;)V
17: aload 0
iload 4
invokevirtual android.text.Layout.getParagraphDirection:(I)I
iconst_m1
if_icmpne 22
18: aload 3
aload 0
iload 4
invokevirtual android.text.Layout.getLineLeft:(I)F
iload 6
i2f
fconst_0
aload 0
iload 4
invokevirtual android.text.Layout.getLineBottom:(I)I
i2f
19: iconst_0
20: invokeinterface android.text.Layout$SelectionRectangleConsumer.accept:(FFFFI)V
21: goto 25
22: StackMap locals: float
StackMap stack:
aload 3
aload 0
iload 4
invokevirtual android.text.Layout.getLineRight:(I)F
iload 6
i2f
fload 8
aload 0
iload 4
invokevirtual android.text.Layout.getLineBottom:(I)I
i2f
23: iconst_1
24: invokeinterface android.text.Layout$SelectionRectangleConsumer.accept:(FFFFI)V
25: StackMap locals:
StackMap stack:
iload 4
iconst_1
iadd
istore 9
start local 9 26: goto 34
27: StackMap locals: int
StackMap stack:
aload 0
iload 9
invokevirtual android.text.Layout.getLineTop:(I)I
istore 6
28: aload 0
iload 9
invokevirtual android.text.Layout.getLineBottom:(I)I
istore 7
29: aload 0
iload 9
invokevirtual android.text.Layout.getParagraphDirection:(I)I
iconst_m1
if_icmpne 32
30: aload 3
fconst_0
iload 6
i2f
fload 8
iload 7
i2f
iconst_0
invokeinterface android.text.Layout$SelectionRectangleConsumer.accept:(FFFFI)V
31: goto 33
32: StackMap locals:
StackMap stack:
aload 3
fconst_0
iload 6
i2f
fload 8
iload 7
i2f
iconst_1
invokeinterface android.text.Layout$SelectionRectangleConsumer.accept:(FFFFI)V
33: StackMap locals:
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
34: iload 9
iload 5
if_icmplt 27
end local 9 35: aload 0
iload 5
invokevirtual android.text.Layout.getLineTop:(I)I
istore 6
36: aload 0
iload 5
invokevirtual android.text.Layout.getLineBottomWithoutSpacing:(I)I
istore 7
37: aload 0
iload 5
aload 0
iload 5
invokevirtual android.text.Layout.getLineStart:(I)I
iload 2
iload 6
iload 7
aload 3
invokevirtual android.text.Layout.addSelection:(IIIIILandroid/text/Layout$SelectionRectangleConsumer;)V
38: aload 0
iload 5
invokevirtual android.text.Layout.getParagraphDirection:(I)I
iconst_m1
if_icmpne 43
39: aload 3
fload 8
iload 6
i2f
aload 0
iload 5
invokevirtual android.text.Layout.getLineRight:(I)F
iload 7
i2f
40: iconst_0
41: invokeinterface android.text.Layout$SelectionRectangleConsumer.accept:(FFFFI)V
42: goto 46
43: StackMap locals:
StackMap stack:
aload 3
fconst_0
iload 6
i2f
aload 0
iload 5
invokevirtual android.text.Layout.getLineLeft:(I)F
iload 7
i2f
44: iconst_1
45: invokeinterface android.text.Layout$SelectionRectangleConsumer.accept:(FFFFI)V
end local 8 46: StackMap locals:
StackMap stack:
return
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 47 0 this Landroid/text/Layout;
0 47 1 start I
0 47 2 end I
0 47 3 consumer Landroid/text/Layout$SelectionRectangleConsumer;
4 6 4 temp I
7 47 4 startline I
8 47 5 endline I
9 47 6 top I
10 47 7 bottom I
14 46 8 width F
26 35 9 i I
MethodParameters:
Name Flags
start
end
consumer final
public final android.text.Layout$Alignment getParagraphAlignment(int);
descriptor: (I)Landroid/text/Layout$Alignment;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield android.text.Layout.mAlignment:Landroid/text/Layout$Alignment;
astore 2
start local 2 1: aload 0
getfield android.text.Layout.mSpannedText:Z
ifeq 10
2: aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
checkcast android.text.Spanned
astore 3
start local 3 3: aload 3
aload 0
iload 1
invokevirtual android.text.Layout.getLineStart:(I)I
4: aload 0
iload 1
invokevirtual android.text.Layout.getLineEnd:(I)I
5: ldc Landroid/text/style/AlignmentSpan;
6: invokestatic android.text.Layout.getParagraphSpans:(Landroid/text/Spanned;IILjava/lang/Class;)[Ljava/lang/Object;
checkcast android.text.style.AlignmentSpan[]
astore 4
start local 4 7: aload 4
arraylength
istore 5
start local 5 8: iload 5
ifle 10
9: aload 4
iload 5
iconst_1
isub
aaload
invokeinterface android.text.style.AlignmentSpan.getAlignment:()Landroid/text/Layout$Alignment;
astore 2
end local 5 end local 4 end local 3 10: StackMap locals: android.text.Layout$Alignment
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Landroid/text/Layout;
0 11 1 line I
1 11 2 align Landroid/text/Layout$Alignment;
3 10 3 sp Landroid/text/Spanned;
7 10 4 spans [Landroid/text/style/AlignmentSpan;
8 10 5 spanLength I
MethodParameters:
Name Flags
line
public final int getParagraphLeft(int);
descriptor: (I)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphDirection:(I)I
istore 3
start local 3 2: iload 3
iconst_m1
if_icmpeq 3
aload 0
getfield android.text.Layout.mSpannedText:Z
ifne 4
3: StackMap locals: int int
StackMap stack:
iload 2
ireturn
4: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual android.text.Layout.getParagraphLeadingMargin:(I)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/text/Layout;
0 5 1 line I
1 5 2 left I
2 5 3 dir I
MethodParameters:
Name Flags
line
public final int getParagraphRight(int);
descriptor: (I)I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield android.text.Layout.mWidth:I
istore 2
start local 2 1: aload 0
iload 1
invokevirtual android.text.Layout.getParagraphDirection:(I)I
istore 3
start local 3 2: iload 3
iconst_1
if_icmpeq 3
aload 0
getfield android.text.Layout.mSpannedText:Z
ifne 4
3: StackMap locals: int int
StackMap stack:
iload 2
ireturn
4: StackMap locals:
StackMap stack:
iload 2
aload 0
iload 1
invokevirtual android.text.Layout.getParagraphLeadingMargin:(I)I
isub
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/text/Layout;
0 5 1 line I
1 5 2 right I
2 5 3 dir I
MethodParameters:
Name Flags
line
private int getParagraphLeadingMargin(int);
descriptor: (I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=13, args_size=2
start local 0 start local 1 0: aload 0
getfield android.text.Layout.mSpannedText:Z
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield android.text.Layout.mText:Ljava/lang/CharSequence;
checkcast android.text.Spanned
astore 2
start local 2 3: aload 0
iload 1
invokevirtual android.text.Layout.getLineStart:(I)I
istore 3
start local 3 4: aload 0
iload 1
invokevirtual android.text.Layout.getLineEnd:(I)I
istore 4
start local 4 5: aload 2
iload 3
iload 4
6: ldc Landroid/text/style/LeadingMarginSpan;
7: invokeinterface android.text.Spanned.nextSpanTransition:(IILjava/lang/Class;)I
istore 5
start local 5 8: aload 2
iload 3
iload 5
9: ldc Landroid/text/style/LeadingMarginSpan;
10: invokestatic android.text.Layout.getParagraphSpans:(Landroid/text/Spanned;IILjava/lang/Class;)[Ljava/lang/Object;
checkcast android.text.style.LeadingMarginSpan[]
astore 6
start local 6 11: aload 6
arraylength
ifne 13
12: iconst_0
ireturn
13: StackMap locals: android.text.Layout int android.text.Spanned int int int android.text.style.LeadingMarginSpan[]
StackMap stack:
iconst_0
istore 7
start local 7 14: iload 3
ifeq 15
aload 2
iload 3
iconst_1
isub
invokeinterface android.text.Spanned.charAt:(I)C
bipush 10
if_icmpeq 15
iconst_0
goto 16
StackMap locals: int
StackMap stack:
15: iconst_1
StackMap locals:
StackMap stack: int
16: istore 8
start local 8 17: iconst_0
istore 9
start local 9 18: goto 27
19: StackMap locals: int int
StackMap stack:
aload 6
iload 9
aaload
instanceof android.text.style.LeadingMarginSpan$LeadingMarginSpan2
ifeq 26
20: aload 2
aload 6
iload 9
aaload
invokeinterface android.text.Spanned.getSpanStart:(Ljava/lang/Object;)I
istore 10
start local 10 21: aload 0
iload 10
invokevirtual android.text.Layout.getLineForOffset:(I)I
istore 11
start local 11 22: aload 6
iload 9
aaload
checkcast android.text.style.LeadingMarginSpan$LeadingMarginSpan2
invokeinterface android.text.style.LeadingMarginSpan$LeadingMarginSpan2.getLeadingMarginLineCount:()I
istore 12
start local 12 23: iload 8
iload 1
iload 11
iload 12
iadd
if_icmpge 24
iconst_1
goto 25
StackMap locals: android.text.Layout int android.text.Spanned int int int android.text.style.LeadingMarginSpan[] int int int int int int
StackMap stack: int
24: iconst_0
StackMap locals: android.text.Layout int android.text.Spanned int int int android.text.style.LeadingMarginSpan[] int int int int int int
StackMap stack: int int
25: ior
istore 8
end local 12 end local 11 end local 10 26: StackMap locals:
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
27: iload 9
aload 6
arraylength
if_icmplt 19
end local 9 28: iconst_0
istore 9
start local 9 29: goto 33
30: StackMap locals:
StackMap stack:
aload 6
iload 9
aaload
astore 10
start local 10 31: iload 7
aload 10
iload 8
invokeinterface android.text.style.LeadingMarginSpan.getLeadingMargin:(Z)I
iadd
istore 7
end local 10 32: iinc 9 1
StackMap locals:
StackMap stack:
33: iload 9
aload 6
arraylength
if_icmplt 30
end local 9 34: iload 7
ireturn
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 35 0 this Landroid/text/Layout;
0 35 1 line I
3 35 2 spanned Landroid/text/Spanned;
4 35 3 lineStart I
5 35 4 lineEnd I
8 35 5 spanEnd I
11 35 6 spans [Landroid/text/style/LeadingMarginSpan;
14 35 7 margin I
17 35 8 useFirstLineMargin Z
18 28 9 i I
21 26 10 spStart I
22 26 11 spanLine I
23 26 12 count I
29 34 9 i I
31 32 10 span Landroid/text/style/LeadingMarginSpan;
MethodParameters:
Name Flags
line
private static float measurePara(android.text.TextPaint, java.lang.CharSequence, int, int, android.text.TextDirectionHeuristic);
descriptor: (Landroid/text/TextPaint;Ljava/lang/CharSequence;IILandroid/text/TextDirectionHeuristic;)F
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=9, locals=22, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aconst_null
astore 5
start local 5 1: invokestatic android.text.TextLine.obtain:()Landroid/text/TextLine;
astore 6
start local 6 2: aload 1
iload 2
iload 3
aload 4
aload 5
invokestatic android.text.MeasuredParagraph.buildForBidi:(Ljava/lang/CharSequence;IILandroid/text/TextDirectionHeuristic;Landroid/text/MeasuredParagraph;)Landroid/text/MeasuredParagraph;
astore 5
3: aload 5
invokevirtual android.text.MeasuredParagraph.getChars:()[C
astore 7
start local 7 4: aload 7
arraylength
istore 8
start local 8 5: aload 5
iconst_0
iload 8
invokevirtual android.text.MeasuredParagraph.getDirections:(II)Landroid/text/Layout$Directions;
astore 9
start local 9 6: aload 5
invokevirtual android.text.MeasuredParagraph.getParagraphDir:()I
istore 10
start local 10 7: iconst_0
istore 11
start local 11 8: aconst_null
astore 12
start local 12 9: iconst_0
istore 13
start local 13 10: aload 1
instanceof android.text.Spanned
ifeq 20
11: aload 1
checkcast android.text.Spanned
astore 14
start local 14 12: aload 14
iload 2
iload 3
13: ldc Landroid/text/style/LeadingMarginSpan;
14: invokestatic android.text.Layout.getParagraphSpans:(Landroid/text/Spanned;IILjava/lang/Class;)[Ljava/lang/Object;
checkcast android.text.style.LeadingMarginSpan[]
astore 15
start local 15 15: aload 15
dup
astore 19
arraylength
istore 18
iconst_0
istore 17
goto 19
StackMap locals: android.text.TextPaint java.lang.CharSequence int int android.text.TextDirectionHeuristic android.text.MeasuredParagraph android.text.TextLine char[] int android.text.Layout$Directions int int android.text.Layout$TabStops int android.text.Spanned android.text.style.LeadingMarginSpan[] top int int android.text.style.LeadingMarginSpan[]
StackMap stack:
16: aload 19
iload 17
aaload
astore 16
start local 16 17: iload 13
aload 16
iconst_1
invokeinterface android.text.style.LeadingMarginSpan.getLeadingMargin:(Z)I
iadd
istore 13
end local 16 18: iinc 17 1
StackMap locals:
StackMap stack:
19: iload 17
iload 18
if_icmplt 16
end local 15 end local 14 20: StackMap locals: android.text.TextPaint java.lang.CharSequence int int android.text.TextDirectionHeuristic android.text.MeasuredParagraph android.text.TextLine char[] int android.text.Layout$Directions int int android.text.Layout$TabStops int
StackMap stack:
iconst_0
istore 14
start local 14 21: goto 36
22: StackMap locals: int
StackMap stack:
aload 7
iload 14
caload
bipush 9
if_icmpne 35
23: iconst_1
istore 11
24: aload 1
instanceof android.text.Spanned
ifeq 37
25: aload 1
checkcast android.text.Spanned
astore 15
start local 15 26: aload 15
iload 2
iload 3
27: ldc Landroid/text/style/TabStopSpan;
28: invokeinterface android.text.Spanned.nextSpanTransition:(IILjava/lang/Class;)I
istore 16
start local 16 29: aload 15
iload 2
iload 16
30: ldc Landroid/text/style/TabStopSpan;
31: invokestatic android.text.Layout.getParagraphSpans:(Landroid/text/Spanned;IILjava/lang/Class;)[Ljava/lang/Object;
checkcast android.text.style.TabStopSpan[]
astore 17
start local 17 32: aload 17
arraylength
ifle 37
33: new android.text.Layout$TabStops
dup
bipush 20
aload 17
invokespecial android.text.Layout$TabStops.<init>:(I[Ljava/lang/Object;)V
astore 12
end local 17 end local 16 end local 15 34: goto 37
35: StackMap locals:
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
36: iload 14
iload 8
if_icmplt 22
end local 14 37: StackMap locals:
StackMap stack:
aload 6
aload 0
aload 1
iload 2
iload 3
iload 10
aload 9
iload 11
aload 12
invokevirtual android.text.TextLine.set:(Landroid/text/TextPaint;Ljava/lang/CharSequence;IIILandroid/text/Layout$Directions;ZLandroid/text/Layout$TabStops;)V
38: iload 13
i2f
aload 6
aconst_null
invokevirtual android.text.TextLine.metrics:(Landroid/graphics/Paint$FontMetricsInt;)F
invokestatic java.lang.Math.abs:(F)F
fadd
fstore 21
39: aload 6
invokestatic android.text.TextLine.recycle:(Landroid/text/TextLine;)Landroid/text/TextLine;
pop
40: aload 5
ifnull 42
41: aload 5
invokevirtual android.text.MeasuredParagraph.recycle:()V
42: StackMap locals: android.text.TextPaint java.lang.CharSequence int int android.text.TextDirectionHeuristic android.text.MeasuredParagraph android.text.TextLine char[] int android.text.Layout$Directions int int android.text.Layout$TabStops int top top top top top top top float
StackMap stack:
fload 21
freturn
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 43: StackMap locals: android.text.TextPaint java.lang.CharSequence int int android.text.TextDirectionHeuristic android.text.MeasuredParagraph android.text.TextLine
StackMap stack: java.lang.Throwable
astore 20
44: aload 6
invokestatic android.text.TextLine.recycle:(Landroid/text/TextLine;)Landroid/text/TextLine;
pop
45: aload 5
ifnull 47
46: aload 5
invokevirtual android.text.MeasuredParagraph.recycle:()V
47: StackMap locals: android.text.TextPaint java.lang.CharSequence int int android.text.TextDirectionHeuristic android.text.MeasuredParagraph android.text.TextLine top top top top top top top top top top top top top java.lang.Throwable
StackMap stack:
aload 20
athrow
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 48 0 paint Landroid/text/TextPaint;
0 48 1 text Ljava/lang/CharSequence;
0 48 2 start I
0 48 3 end I
0 48 4 textDir Landroid/text/TextDirectionHeuristic;
1 48 5 mt Landroid/text/MeasuredParagraph;
2 48 6 tl Landroid/text/TextLine;
4 43 7 chars [C
5 43 8 len I
6 43 9 directions Landroid/text/Layout$Directions;
7 43 10 dir I
8 43 11 hasTabs Z
9 43 12 tabStops Landroid/text/Layout$TabStops;
10 43 13 margin I
12 20 14 spanned Landroid/text/Spanned;
15 20 15 spans [Landroid/text/style/LeadingMarginSpan;
17 18 16 lms Landroid/text/style/LeadingMarginSpan;
21 37 14 i I
26 34 15 spanned Landroid/text/Spanned;
29 34 16 spanEnd I
32 34 17 spans [Landroid/text/style/TabStopSpan;
Exception table:
from to target type
2 39 43 any
MethodParameters:
Name Flags
paint
text
start
end
textDir
static float nextTab(java.lang.CharSequence, int, int, float, java.lang.Object[]);
descriptor: (Ljava/lang/CharSequence;IIF[Ljava/lang/Object;)F
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: ldc 3.4028235E38
fstore 5
start local 5 1: iconst_0
istore 6
start local 6 2: aload 0
instanceof android.text.Spanned
ifeq 18
3: aload 4
ifnonnull 6
4: aload 0
checkcast android.text.Spanned
iload 1
iload 2
ldc Landroid/text/style/TabStopSpan;
invokestatic android.text.Layout.getParagraphSpans:(Landroid/text/Spanned;IILjava/lang/Class;)[Ljava/lang/Object;
astore 4
5: iconst_1
istore 6
6: StackMap locals: float int
StackMap stack:
iconst_0
istore 7
start local 7 7: goto 15
8: StackMap locals: int
StackMap stack:
iload 6
ifne 11
9: aload 4
iload 7
aaload
instanceof android.text.style.TabStopSpan
ifne 11
10: goto 14
11: StackMap locals:
StackMap stack:
aload 4
iload 7
aaload
checkcast android.text.style.TabStopSpan
invokeinterface android.text.style.TabStopSpan.getTabStop:()I
istore 8
start local 8 12: iload 8
i2f
fload 5
fcmpg
ifge 14
iload 8
i2f
fload 3
fcmpl
ifle 14
13: iload 8
i2f
fstore 5
end local 8 14: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
15: iload 7
aload 4
arraylength
if_icmplt 8
end local 7 16: fload 5
ldc 3.4028235E38
fcmpl
ifeq 18
17: fload 5
freturn
18: StackMap locals:
StackMap stack:
fload 3
ldc 20.0
fadd
ldc 20.0
fdiv
f2i
bipush 20
imul
i2f
freturn
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 19 0 text Ljava/lang/CharSequence;
0 19 1 start I
0 19 2 end I
0 19 3 h F
0 19 4 tabs [Ljava/lang/Object;
1 19 5 nh F
2 19 6 alltabs Z
7 16 7 i I
12 14 8 where I
MethodParameters:
Name Flags
text
start
end
h
tabs
protected final boolean isSpanned();
descriptor: ()Z
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.text.Layout.mSpannedText:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/text/Layout;
static <T> T[] getParagraphSpans(android.text.Spanned, int, int, java.lang.Class<T>);
descriptor: (Landroid/text/Spanned;IILjava/lang/Class;)[Ljava/lang/Object;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 1
iload 2
if_icmpne 2
iload 1
ifle 2
1: aload 3
invokestatic com.android.internal.util.ArrayUtils.emptyArray:(Ljava/lang/Class;)[Ljava/lang/Object;
areturn
2: StackMap locals:
StackMap stack:
aload 0
instanceof android.text.SpannableStringBuilder
ifeq 4
3: aload 0
checkcast android.text.SpannableStringBuilder
iload 1
iload 2
aload 3
iconst_0
invokevirtual android.text.SpannableStringBuilder.getSpans:(IILjava/lang/Class;Z)[Ljava/lang/Object;
areturn
4: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
aload 3
invokeinterface android.text.Spanned.getSpans:(IILjava/lang/Class;)[Ljava/lang/Object;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 text Landroid/text/Spanned;
0 5 1 start I
0 5 2 end I
0 5 3 type Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Landroid/text/Spanned;IILjava/lang/Class<TT;>;)[TT;
MethodParameters:
Name Flags
text
start
end
type
private void ellipsize(int, int, int, char[], int, android.text.TextUtils$TruncateAt);
descriptor: (III[CILandroid/text/TextUtils$TruncateAt;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=16, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
iload 3
invokevirtual android.text.Layout.getEllipsisCount:(I)I
istore 7
start local 7 1: iload 7
ifne 3
2: return
3: StackMap locals: int
StackMap stack:
aload 0
iload 3
invokevirtual android.text.Layout.getEllipsisStart:(I)I
istore 8
start local 8 4: aload 0
iload 3
invokevirtual android.text.Layout.getLineStart:(I)I
istore 9
start local 9 5: aload 6
invokestatic android.text.TextUtils.getEllipsisString:(Landroid/text/TextUtils$TruncateAt;)Ljava/lang/String;
astore 10
start local 10 6: aload 10
invokevirtual java.lang.String.length:()I
istore 11
start local 11 7: iload 7
iload 11
if_icmplt 8
iconst_1
goto 9
StackMap locals: android.text.Layout int int int char[] int android.text.TextUtils$TruncateAt int int int java.lang.String int
StackMap stack:
8: iconst_0
StackMap locals:
StackMap stack: int
9: istore 12
start local 12 10: iconst_0
istore 13
start local 13 11: goto 20
12: StackMap locals: int int
StackMap stack:
iload 12
ifeq 15
iload 13
iload 11
if_icmpge 15
13: aload 10
iload 13
invokevirtual java.lang.String.charAt:(I)C
istore 14
start local 14 14: goto 16
end local 14 15: StackMap locals:
StackMap stack:
ldc 65279
istore 14
start local 14 16: StackMap locals: int
StackMap stack:
iload 13
iload 8
iadd
iload 9
iadd
istore 15
start local 15 17: iload 1
iload 15
if_icmpgt 19
iload 15
iload 2
if_icmpge 19
18: aload 4
iload 5
iload 15
iadd
iload 1
isub
iload 14
castore
end local 15 end local 14 19: StackMap locals:
StackMap stack:
iinc 13 1
StackMap locals:
StackMap stack:
20: iload 13
iload 7
if_icmplt 12
end local 13 21: return
end local 12 end local 11 end local 10 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 22 0 this Landroid/text/Layout;
0 22 1 start I
0 22 2 end I
0 22 3 line I
0 22 4 dest [C
0 22 5 destoff I
0 22 6 method Landroid/text/TextUtils$TruncateAt;
1 22 7 ellipsisCount I
4 22 8 ellipsisStart I
5 22 9 lineStart I
6 22 10 ellipsisString Ljava/lang/String;
7 22 11 ellipsisStringLen I
10 22 12 useEllipsisString Z
11 21 13 i I
14 15 14 c C
16 19 14 c C
17 19 15 a I
MethodParameters:
Name Flags
start
end
line
dest
destoff
method
public abstract int getEllipsisStart(int);
descriptor: (I)I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
line
public abstract int getEllipsisCount(int);
descriptor: (I)I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
line
static int[] $SWITCH_TABLE$android$text$Layout$Alignment();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic android.text.Layout.$SWITCH_TABLE$android$text$Layout$Alignment:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic android.text.Layout$Alignment.values:()[Landroid/text/Layout$Alignment;
arraylength
newarray 10
astore 0
2: aload 0
getstatic android.text.Layout$Alignment.ALIGN_CENTER:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout$Alignment.ordinal:()I
iconst_3
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic android.text.Layout$Alignment.ALIGN_LEFT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout$Alignment.ordinal:()I
iconst_4
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic android.text.Layout$Alignment.ALIGN_NORMAL:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout$Alignment.ordinal:()I
iconst_1
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic android.text.Layout$Alignment.ALIGN_OPPOSITE:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout$Alignment.ordinal:()I
iconst_2
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic android.text.Layout$Alignment.ALIGN_RIGHT:Landroid/text/Layout$Alignment;
invokevirtual android.text.Layout$Alignment.ordinal:()I
iconst_5
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
dup
putstatic android.text.Layout.$SWITCH_TABLE$android$text$Layout$Alignment:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
private static void lambda$0(android.graphics.Path, float, float, float, float, int);
descriptor: (Landroid/graphics/Path;FFFFI)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=6, locals=6, args_size=6
start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
fload 1
fload 2
fload 3
fload 4
getstatic android.graphics.Path$Direction.CW:Landroid/graphics/Path$Direction;
invokevirtual android.graphics.Path.addRect:(FFFFLandroid/graphics/Path$Direction;)V
return
end local 5 end local 4 end local 3 end local 2 end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 left F
0 1 2 top F
0 1 3 right F
0 1 4 bottom F
0 1 5 textSelectionLayout I
}
SourceFile: "Layout.java"
NestMembers:
android.text.Layout$Alignment android.text.Layout$BreakStrategy android.text.Layout$Direction android.text.Layout$Directions android.text.Layout$Ellipsizer android.text.Layout$HorizontalMeasurementProvider android.text.Layout$HyphenationFrequency android.text.Layout$JustificationMode android.text.Layout$SelectionRectangleConsumer android.text.Layout$SpannedEllipsizer android.text.Layout$TabStops android.text.Layout$TextSelectionLayout
InnerClasses:
public FontMetricsInt = android.graphics.Paint$FontMetricsInt of android.graphics.Paint
public final Direction = android.graphics.Path$Direction of android.graphics.Path
public final Alignment = android.text.Layout$Alignment of android.text.Layout
public abstract BreakStrategy = android.text.Layout$BreakStrategy of android.text.Layout
public abstract Direction = android.text.Layout$Direction of android.text.Layout
public Directions = android.text.Layout$Directions of android.text.Layout
Ellipsizer = android.text.Layout$Ellipsizer of android.text.Layout
private HorizontalMeasurementProvider = android.text.Layout$HorizontalMeasurementProvider of android.text.Layout
public abstract HyphenationFrequency = android.text.Layout$HyphenationFrequency of android.text.Layout
public abstract JustificationMode = android.text.Layout$JustificationMode of android.text.Layout
public abstract SelectionRectangleConsumer = android.text.Layout$SelectionRectangleConsumer of android.text.Layout
SpannedEllipsizer = android.text.Layout$SpannedEllipsizer of android.text.Layout
TabStops = android.text.Layout$TabStops of android.text.Layout
public abstract TextSelectionLayout = android.text.Layout$TextSelectionLayout of android.text.Layout
public final TruncateAt = android.text.TextUtils$TruncateAt of android.text.TextUtils
public abstract LeadingMarginSpan2 = android.text.style.LeadingMarginSpan$LeadingMarginSpan2 of android.text.style.LeadingMarginSpan
public final Visibility = com.android.internal.annotations.VisibleForTesting$Visibility of com.android.internal.annotations.VisibleForTesting
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles