Add Discord APKTool decompilation (Smali source for modding)

- Imported from https://github.com/supermegamestre/Project-Real-Resurrection-3
- APKTool decompilation (Smali bytecode) for modding and rebuilding APK
- Supports both 32-bit (armeabi-v7a) and 64-bit (arm64-v8a) architectures
- Includes full Smali source, resources, and native libraries
- Ready to rebuild APK after modifications with apktool b command
- Added comprehensive README-apktool.md with modding guide

This branch complements the JADX branches:
- Use JADX (main/discord-community) to UNDERSTAND code (readable Java)
- Use APKTool (this branch) to MODIFY and REBUILD APK (editable Smali)

Total: 44,417 files, 538.51 MB Smali source code
This commit is contained in:
2026-02-18 16:13:44 -08:00
parent c080f0d97f
commit f3960ee359
44288 changed files with 10998761 additions and 0 deletions

View File

@@ -0,0 +1,332 @@
.class public final enum Lcom/google/zxing/BarcodeFormat;
.super Ljava/lang/Enum;
.source "SourceFile"
# static fields
.field private static final synthetic $VALUES:[Lcom/google/zxing/BarcodeFormat;
.field public static final enum AZTEC:Lcom/google/zxing/BarcodeFormat;
.field public static final enum CODABAR:Lcom/google/zxing/BarcodeFormat;
.field public static final enum CODE_128:Lcom/google/zxing/BarcodeFormat;
.field public static final enum CODE_39:Lcom/google/zxing/BarcodeFormat;
.field public static final enum CODE_93:Lcom/google/zxing/BarcodeFormat;
.field public static final enum DATA_MATRIX:Lcom/google/zxing/BarcodeFormat;
.field public static final enum EAN_13:Lcom/google/zxing/BarcodeFormat;
.field public static final enum EAN_8:Lcom/google/zxing/BarcodeFormat;
.field public static final enum ITF:Lcom/google/zxing/BarcodeFormat;
.field public static final enum MAXICODE:Lcom/google/zxing/BarcodeFormat;
.field public static final enum PDF_417:Lcom/google/zxing/BarcodeFormat;
.field public static final enum QR_CODE:Lcom/google/zxing/BarcodeFormat;
.field public static final enum RSS_14:Lcom/google/zxing/BarcodeFormat;
.field public static final enum RSS_EXPANDED:Lcom/google/zxing/BarcodeFormat;
.field public static final enum UPC_A:Lcom/google/zxing/BarcodeFormat;
.field public static final enum UPC_E:Lcom/google/zxing/BarcodeFormat;
.field public static final enum UPC_EAN_EXTENSION:Lcom/google/zxing/BarcodeFormat;
# direct methods
.method static constructor <clinit>()V
.locals 20
.line 27
new-instance v1, Lcom/google/zxing/BarcodeFormat;
move-object v0, v1
const-string v2, "AZTEC"
const/4 v3, 0x0
invoke-direct {v1, v2, v3}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v1, Lcom/google/zxing/BarcodeFormat;->AZTEC:Lcom/google/zxing/BarcodeFormat;
.line 30
new-instance v2, Lcom/google/zxing/BarcodeFormat;
move-object v1, v2
const-string v3, "CODABAR"
const/4 v4, 0x1
invoke-direct {v2, v3, v4}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v2, Lcom/google/zxing/BarcodeFormat;->CODABAR:Lcom/google/zxing/BarcodeFormat;
.line 33
new-instance v3, Lcom/google/zxing/BarcodeFormat;
move-object v2, v3
const-string v4, "CODE_39"
const/4 v5, 0x2
invoke-direct {v3, v4, v5}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v3, Lcom/google/zxing/BarcodeFormat;->CODE_39:Lcom/google/zxing/BarcodeFormat;
.line 36
new-instance v4, Lcom/google/zxing/BarcodeFormat;
move-object v3, v4
const-string v5, "CODE_93"
const/4 v6, 0x3
invoke-direct {v4, v5, v6}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v4, Lcom/google/zxing/BarcodeFormat;->CODE_93:Lcom/google/zxing/BarcodeFormat;
.line 39
new-instance v5, Lcom/google/zxing/BarcodeFormat;
move-object v4, v5
const-string v6, "CODE_128"
const/4 v7, 0x4
invoke-direct {v5, v6, v7}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v5, Lcom/google/zxing/BarcodeFormat;->CODE_128:Lcom/google/zxing/BarcodeFormat;
.line 42
new-instance v6, Lcom/google/zxing/BarcodeFormat;
move-object v5, v6
const-string v7, "DATA_MATRIX"
const/4 v8, 0x5
invoke-direct {v6, v7, v8}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v6, Lcom/google/zxing/BarcodeFormat;->DATA_MATRIX:Lcom/google/zxing/BarcodeFormat;
.line 45
new-instance v7, Lcom/google/zxing/BarcodeFormat;
move-object v6, v7
const-string v8, "EAN_8"
const/4 v9, 0x6
invoke-direct {v7, v8, v9}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v7, Lcom/google/zxing/BarcodeFormat;->EAN_8:Lcom/google/zxing/BarcodeFormat;
.line 48
new-instance v8, Lcom/google/zxing/BarcodeFormat;
move-object v7, v8
const-string v9, "EAN_13"
const/4 v10, 0x7
invoke-direct {v8, v9, v10}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v8, Lcom/google/zxing/BarcodeFormat;->EAN_13:Lcom/google/zxing/BarcodeFormat;
.line 51
new-instance v9, Lcom/google/zxing/BarcodeFormat;
move-object v8, v9
const-string v10, "ITF"
const/16 v11, 0x8
invoke-direct {v9, v10, v11}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v9, Lcom/google/zxing/BarcodeFormat;->ITF:Lcom/google/zxing/BarcodeFormat;
.line 54
new-instance v10, Lcom/google/zxing/BarcodeFormat;
move-object v9, v10
const-string v11, "MAXICODE"
const/16 v12, 0x9
invoke-direct {v10, v11, v12}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v10, Lcom/google/zxing/BarcodeFormat;->MAXICODE:Lcom/google/zxing/BarcodeFormat;
.line 57
new-instance v11, Lcom/google/zxing/BarcodeFormat;
move-object v10, v11
const-string v12, "PDF_417"
const/16 v13, 0xa
invoke-direct {v11, v12, v13}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v11, Lcom/google/zxing/BarcodeFormat;->PDF_417:Lcom/google/zxing/BarcodeFormat;
.line 60
new-instance v12, Lcom/google/zxing/BarcodeFormat;
move-object v11, v12
const-string v13, "QR_CODE"
const/16 v14, 0xb
invoke-direct {v12, v13, v14}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v12, Lcom/google/zxing/BarcodeFormat;->QR_CODE:Lcom/google/zxing/BarcodeFormat;
.line 63
new-instance v13, Lcom/google/zxing/BarcodeFormat;
move-object v12, v13
const-string v14, "RSS_14"
const/16 v15, 0xc
invoke-direct {v13, v14, v15}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v13, Lcom/google/zxing/BarcodeFormat;->RSS_14:Lcom/google/zxing/BarcodeFormat;
.line 66
new-instance v14, Lcom/google/zxing/BarcodeFormat;
move-object v13, v14
const-string v15, "RSS_EXPANDED"
move-object/from16 v17, v0
const/16 v0, 0xd
invoke-direct {v14, v15, v0}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v14, Lcom/google/zxing/BarcodeFormat;->RSS_EXPANDED:Lcom/google/zxing/BarcodeFormat;
.line 69
new-instance v0, Lcom/google/zxing/BarcodeFormat;
move-object v14, v0
const-string v15, "UPC_A"
move-object/from16 v18, v1
const/16 v1, 0xe
invoke-direct {v0, v15, v1}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/google/zxing/BarcodeFormat;->UPC_A:Lcom/google/zxing/BarcodeFormat;
.line 72
new-instance v0, Lcom/google/zxing/BarcodeFormat;
move-object v15, v0
const-string v1, "UPC_E"
move-object/from16 v19, v2
const/16 v2, 0xf
invoke-direct {v0, v1, v2}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/google/zxing/BarcodeFormat;->UPC_E:Lcom/google/zxing/BarcodeFormat;
.line 75
new-instance v0, Lcom/google/zxing/BarcodeFormat;
move-object/from16 v16, v0
const-string v1, "UPC_EAN_EXTENSION"
const/16 v2, 0x10
invoke-direct {v0, v1, v2}, Lcom/google/zxing/BarcodeFormat;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/google/zxing/BarcodeFormat;->UPC_EAN_EXTENSION:Lcom/google/zxing/BarcodeFormat;
move-object/from16 v0, v17
move-object/from16 v1, v18
move-object/from16 v2, v19
filled-new-array/range {v0 .. v16}, [Lcom/google/zxing/BarcodeFormat;
move-result-object v0
sput-object v0, Lcom/google/zxing/BarcodeFormat;->$VALUES:[Lcom/google/zxing/BarcodeFormat;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
.line 24
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/google/zxing/BarcodeFormat;
.locals 1
const-class v0, Lcom/google/zxing/BarcodeFormat;
.line 24
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/google/zxing/BarcodeFormat;
return-object p0
.end method
.method public static values()[Lcom/google/zxing/BarcodeFormat;
.locals 1
sget-object v0, Lcom/google/zxing/BarcodeFormat;->$VALUES:[Lcom/google/zxing/BarcodeFormat;
.line 24
invoke-virtual {v0}, [Lcom/google/zxing/BarcodeFormat;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/google/zxing/BarcodeFormat;
return-object v0
.end method

View File

@@ -0,0 +1,3 @@
.class public abstract Lcom/google/zxing/Dimension;
.super Ljava/lang/Object;
.source "SourceFile"

View File

@@ -0,0 +1,227 @@
.class public final enum Lcom/google/zxing/EncodeHintType;
.super Ljava/lang/Enum;
.source "SourceFile"
# static fields
.field private static final synthetic $VALUES:[Lcom/google/zxing/EncodeHintType;
.field public static final enum AZTEC_LAYERS:Lcom/google/zxing/EncodeHintType;
.field public static final enum CHARACTER_SET:Lcom/google/zxing/EncodeHintType;
.field public static final enum DATA_MATRIX_SHAPE:Lcom/google/zxing/EncodeHintType;
.field public static final enum ERROR_CORRECTION:Lcom/google/zxing/EncodeHintType;
.field public static final enum GS1_FORMAT:Lcom/google/zxing/EncodeHintType;
.field public static final enum MARGIN:Lcom/google/zxing/EncodeHintType;
.field public static final enum MAX_SIZE:Lcom/google/zxing/EncodeHintType;
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.end field
.field public static final enum MIN_SIZE:Lcom/google/zxing/EncodeHintType;
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.end field
.field public static final enum PDF417_COMPACT:Lcom/google/zxing/EncodeHintType;
.field public static final enum PDF417_COMPACTION:Lcom/google/zxing/EncodeHintType;
.field public static final enum PDF417_DIMENSIONS:Lcom/google/zxing/EncodeHintType;
.field public static final enum QR_VERSION:Lcom/google/zxing/EncodeHintType;
# direct methods
.method static constructor <clinit>()V
.locals 14
.line 35
new-instance v0, Lcom/google/zxing/EncodeHintType;
const-string v1, "ERROR_CORRECTION"
const/4 v2, 0x0
invoke-direct {v0, v1, v2}, Lcom/google/zxing/EncodeHintType;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/google/zxing/EncodeHintType;->ERROR_CORRECTION:Lcom/google/zxing/EncodeHintType;
.line 40
new-instance v1, Lcom/google/zxing/EncodeHintType;
const-string v2, "CHARACTER_SET"
const/4 v3, 0x1
invoke-direct {v1, v2, v3}, Lcom/google/zxing/EncodeHintType;-><init>(Ljava/lang/String;I)V
sput-object v1, Lcom/google/zxing/EncodeHintType;->CHARACTER_SET:Lcom/google/zxing/EncodeHintType;
.line 45
new-instance v2, Lcom/google/zxing/EncodeHintType;
const-string v3, "DATA_MATRIX_SHAPE"
const/4 v4, 0x2
invoke-direct {v2, v3, v4}, Lcom/google/zxing/EncodeHintType;-><init>(Ljava/lang/String;I)V
sput-object v2, Lcom/google/zxing/EncodeHintType;->DATA_MATRIX_SHAPE:Lcom/google/zxing/EncodeHintType;
.line 53
new-instance v3, Lcom/google/zxing/EncodeHintType;
const-string v4, "MIN_SIZE"
const/4 v5, 0x3
invoke-direct {v3, v4, v5}, Lcom/google/zxing/EncodeHintType;-><init>(Ljava/lang/String;I)V
sput-object v3, Lcom/google/zxing/EncodeHintType;->MIN_SIZE:Lcom/google/zxing/EncodeHintType;
.line 61
new-instance v4, Lcom/google/zxing/EncodeHintType;
const-string v5, "MAX_SIZE"
const/4 v6, 0x4
invoke-direct {v4, v5, v6}, Lcom/google/zxing/EncodeHintType;-><init>(Ljava/lang/String;I)V
sput-object v4, Lcom/google/zxing/EncodeHintType;->MAX_SIZE:Lcom/google/zxing/EncodeHintType;
.line 69
new-instance v5, Lcom/google/zxing/EncodeHintType;
const-string v6, "MARGIN"
const/4 v7, 0x5
invoke-direct {v5, v6, v7}, Lcom/google/zxing/EncodeHintType;-><init>(Ljava/lang/String;I)V
sput-object v5, Lcom/google/zxing/EncodeHintType;->MARGIN:Lcom/google/zxing/EncodeHintType;
.line 75
new-instance v6, Lcom/google/zxing/EncodeHintType;
const-string v7, "PDF417_COMPACT"
const/4 v8, 0x6
invoke-direct {v6, v7, v8}, Lcom/google/zxing/EncodeHintType;-><init>(Ljava/lang/String;I)V
sput-object v6, Lcom/google/zxing/EncodeHintType;->PDF417_COMPACT:Lcom/google/zxing/EncodeHintType;
.line 82
new-instance v7, Lcom/google/zxing/EncodeHintType;
const-string v8, "PDF417_COMPACTION"
const/4 v9, 0x7
invoke-direct {v7, v8, v9}, Lcom/google/zxing/EncodeHintType;-><init>(Ljava/lang/String;I)V
sput-object v7, Lcom/google/zxing/EncodeHintType;->PDF417_COMPACTION:Lcom/google/zxing/EncodeHintType;
.line 88
new-instance v8, Lcom/google/zxing/EncodeHintType;
const-string v9, "PDF417_DIMENSIONS"
const/16 v10, 0x8
invoke-direct {v8, v9, v10}, Lcom/google/zxing/EncodeHintType;-><init>(Ljava/lang/String;I)V
sput-object v8, Lcom/google/zxing/EncodeHintType;->PDF417_DIMENSIONS:Lcom/google/zxing/EncodeHintType;
.line 97
new-instance v9, Lcom/google/zxing/EncodeHintType;
const-string v10, "AZTEC_LAYERS"
const/16 v11, 0x9
invoke-direct {v9, v10, v11}, Lcom/google/zxing/EncodeHintType;-><init>(Ljava/lang/String;I)V
sput-object v9, Lcom/google/zxing/EncodeHintType;->AZTEC_LAYERS:Lcom/google/zxing/EncodeHintType;
.line 103
new-instance v10, Lcom/google/zxing/EncodeHintType;
const-string v11, "QR_VERSION"
const/16 v12, 0xa
invoke-direct {v10, v11, v12}, Lcom/google/zxing/EncodeHintType;-><init>(Ljava/lang/String;I)V
sput-object v10, Lcom/google/zxing/EncodeHintType;->QR_VERSION:Lcom/google/zxing/EncodeHintType;
.line 109
new-instance v11, Lcom/google/zxing/EncodeHintType;
const-string v12, "GS1_FORMAT"
const/16 v13, 0xb
invoke-direct {v11, v12, v13}, Lcom/google/zxing/EncodeHintType;-><init>(Ljava/lang/String;I)V
sput-object v11, Lcom/google/zxing/EncodeHintType;->GS1_FORMAT:Lcom/google/zxing/EncodeHintType;
filled-new-array/range {v0 .. v11}, [Lcom/google/zxing/EncodeHintType;
move-result-object v0
sput-object v0, Lcom/google/zxing/EncodeHintType;->$VALUES:[Lcom/google/zxing/EncodeHintType;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
.line 24
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/google/zxing/EncodeHintType;
.locals 1
const-class v0, Lcom/google/zxing/EncodeHintType;
.line 24
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/google/zxing/EncodeHintType;
return-object p0
.end method
.method public static values()[Lcom/google/zxing/EncodeHintType;
.locals 1
sget-object v0, Lcom/google/zxing/EncodeHintType;->$VALUES:[Lcom/google/zxing/EncodeHintType;
.line 24
invoke-virtual {v0}, [Lcom/google/zxing/EncodeHintType;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/google/zxing/EncodeHintType;
return-object v0
.end method

View File

@@ -0,0 +1,56 @@
.class public final Lcom/google/zxing/FormatException;
.super Lcom/google/zxing/ReaderException;
.source "SourceFile"
# static fields
.field public static final INSTANCE:Lcom/google/zxing/FormatException;
# direct methods
.method static constructor <clinit>()V
.locals 2
.line 28
new-instance v0, Lcom/google/zxing/FormatException;
invoke-direct {v0}, Lcom/google/zxing/FormatException;-><init>()V
sput-object v0, Lcom/google/zxing/FormatException;->INSTANCE:Lcom/google/zxing/FormatException;
sget-object v1, Lcom/google/zxing/ReaderException;->NO_TRACE:[Ljava/lang/StackTraceElement;
.line 30
invoke-virtual {v0, v1}, Ljava/lang/Throwable;->setStackTrace([Ljava/lang/StackTraceElement;)V
return-void
.end method
.method public constructor <init>()V
.locals 0
.line 33
invoke-direct {p0}, Lcom/google/zxing/ReaderException;-><init>()V
return-void
.end method
.method public static getFormatInstance()Lcom/google/zxing/FormatException;
.locals 1
sget-boolean v0, Lcom/google/zxing/ReaderException;->isStackTrace:Z
if-eqz v0, :cond_0
.line 41
new-instance v0, Lcom/google/zxing/FormatException;
invoke-direct {v0}, Lcom/google/zxing/FormatException;-><init>()V
return-object v0
:cond_0
sget-object v0, Lcom/google/zxing/FormatException;->INSTANCE:Lcom/google/zxing/FormatException;
return-object v0
.end method

View File

@@ -0,0 +1,243 @@
.class public abstract synthetic Lcom/google/zxing/MultiFormatWriter$1;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/zxing/MultiFormatWriter;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1009
name = null
.end annotation
# static fields
.field public static final synthetic $SwitchMap$com$google$zxing$BarcodeFormat:[I
# direct methods
.method static constructor <clinit>()V
.locals 3
.line 59
invoke-static {}, Lcom/google/zxing/BarcodeFormat;->values()[Lcom/google/zxing/BarcodeFormat;
move-result-object v0
array-length v0, v0
new-array v0, v0, [I
sput-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
:try_start_0
sget-object v1, Lcom/google/zxing/BarcodeFormat;->EAN_8:Lcom/google/zxing/BarcodeFormat;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x1
aput v2, v0, v1
:try_end_0
.catch Ljava/lang/NoSuchFieldError; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
:try_start_1
sget-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
sget-object v1, Lcom/google/zxing/BarcodeFormat;->UPC_E:Lcom/google/zxing/BarcodeFormat;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x2
aput v2, v0, v1
:try_end_1
.catch Ljava/lang/NoSuchFieldError; {:try_start_1 .. :try_end_1} :catch_1
:catch_1
:try_start_2
sget-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
sget-object v1, Lcom/google/zxing/BarcodeFormat;->EAN_13:Lcom/google/zxing/BarcodeFormat;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x3
aput v2, v0, v1
:try_end_2
.catch Ljava/lang/NoSuchFieldError; {:try_start_2 .. :try_end_2} :catch_2
:catch_2
:try_start_3
sget-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
sget-object v1, Lcom/google/zxing/BarcodeFormat;->UPC_A:Lcom/google/zxing/BarcodeFormat;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x4
aput v2, v0, v1
:try_end_3
.catch Ljava/lang/NoSuchFieldError; {:try_start_3 .. :try_end_3} :catch_3
:catch_3
:try_start_4
sget-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
sget-object v1, Lcom/google/zxing/BarcodeFormat;->QR_CODE:Lcom/google/zxing/BarcodeFormat;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x5
aput v2, v0, v1
:try_end_4
.catch Ljava/lang/NoSuchFieldError; {:try_start_4 .. :try_end_4} :catch_4
:catch_4
:try_start_5
sget-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
sget-object v1, Lcom/google/zxing/BarcodeFormat;->CODE_39:Lcom/google/zxing/BarcodeFormat;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x6
aput v2, v0, v1
:try_end_5
.catch Ljava/lang/NoSuchFieldError; {:try_start_5 .. :try_end_5} :catch_5
:catch_5
:try_start_6
sget-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
sget-object v1, Lcom/google/zxing/BarcodeFormat;->CODE_93:Lcom/google/zxing/BarcodeFormat;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x7
aput v2, v0, v1
:try_end_6
.catch Ljava/lang/NoSuchFieldError; {:try_start_6 .. :try_end_6} :catch_6
:catch_6
:try_start_7
sget-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
sget-object v1, Lcom/google/zxing/BarcodeFormat;->CODE_128:Lcom/google/zxing/BarcodeFormat;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/16 v2, 0x8
aput v2, v0, v1
:try_end_7
.catch Ljava/lang/NoSuchFieldError; {:try_start_7 .. :try_end_7} :catch_7
:catch_7
:try_start_8
sget-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
sget-object v1, Lcom/google/zxing/BarcodeFormat;->ITF:Lcom/google/zxing/BarcodeFormat;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/16 v2, 0x9
aput v2, v0, v1
:try_end_8
.catch Ljava/lang/NoSuchFieldError; {:try_start_8 .. :try_end_8} :catch_8
:catch_8
:try_start_9
sget-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
sget-object v1, Lcom/google/zxing/BarcodeFormat;->PDF_417:Lcom/google/zxing/BarcodeFormat;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/16 v2, 0xa
aput v2, v0, v1
:try_end_9
.catch Ljava/lang/NoSuchFieldError; {:try_start_9 .. :try_end_9} :catch_9
:catch_9
:try_start_a
sget-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
sget-object v1, Lcom/google/zxing/BarcodeFormat;->CODABAR:Lcom/google/zxing/BarcodeFormat;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/16 v2, 0xb
aput v2, v0, v1
:try_end_a
.catch Ljava/lang/NoSuchFieldError; {:try_start_a .. :try_end_a} :catch_a
:catch_a
:try_start_b
sget-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
sget-object v1, Lcom/google/zxing/BarcodeFormat;->DATA_MATRIX:Lcom/google/zxing/BarcodeFormat;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/16 v2, 0xc
aput v2, v0, v1
:try_end_b
.catch Ljava/lang/NoSuchFieldError; {:try_start_b .. :try_end_b} :catch_b
:catch_b
:try_start_c
sget-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
sget-object v1, Lcom/google/zxing/BarcodeFormat;->AZTEC:Lcom/google/zxing/BarcodeFormat;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/16 v2, 0xd
aput v2, v0, v1
:try_end_c
.catch Ljava/lang/NoSuchFieldError; {:try_start_c .. :try_end_c} :catch_c
:catch_c
return-void
.end method

View File

@@ -0,0 +1,193 @@
.class public final Lcom/google/zxing/MultiFormatWriter;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/google/zxing/Writer;
# direct methods
.method public constructor <init>()V
.locals 0
.line 42
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 7
.line 59
sget-object v0, Lcom/google/zxing/MultiFormatWriter$1;->$SwitchMap$com$google$zxing$BarcodeFormat:[I
invoke-virtual {p2}, Ljava/lang/Enum;->ordinal()I
move-result v1
aget v0, v0, v1
packed-switch v0, :pswitch_data_0
.line 100
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
const-string p3, "No encoder available for format "
invoke-virtual {p3, p2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 97
:pswitch_0
new-instance v0, Lcom/google/zxing/aztec/AztecWriter;
invoke-direct {v0}, Lcom/google/zxing/aztec/AztecWriter;-><init>()V
:goto_0
move-object v1, v0
goto :goto_1
.line 94
:pswitch_1
new-instance v0, Lcom/google/zxing/datamatrix/DataMatrixWriter;
invoke-direct {v0}, Lcom/google/zxing/datamatrix/DataMatrixWriter;-><init>()V
goto :goto_0
.line 91
:pswitch_2
new-instance v0, Lcom/google/zxing/oned/CodaBarWriter;
invoke-direct {v0}, Lcom/google/zxing/oned/CodaBarWriter;-><init>()V
goto :goto_0
.line 88
:pswitch_3
new-instance v0, Lcom/google/zxing/pdf417/PDF417Writer;
invoke-direct {v0}, Lcom/google/zxing/pdf417/PDF417Writer;-><init>()V
goto :goto_0
.line 85
:pswitch_4
new-instance v0, Lcom/google/zxing/oned/ITFWriter;
invoke-direct {v0}, Lcom/google/zxing/oned/ITFWriter;-><init>()V
goto :goto_0
.line 82
:pswitch_5
new-instance v0, Lcom/google/zxing/oned/Code128Writer;
invoke-direct {v0}, Lcom/google/zxing/oned/Code128Writer;-><init>()V
goto :goto_0
.line 79
:pswitch_6
new-instance v0, Lcom/google/zxing/oned/Code93Writer;
invoke-direct {v0}, Lcom/google/zxing/oned/Code93Writer;-><init>()V
goto :goto_0
.line 76
:pswitch_7
new-instance v0, Lcom/google/zxing/oned/Code39Writer;
invoke-direct {v0}, Lcom/google/zxing/oned/Code39Writer;-><init>()V
goto :goto_0
.line 73
:pswitch_8
new-instance v0, Lcom/google/zxing/qrcode/QRCodeWriter;
invoke-direct {v0}, Lcom/google/zxing/qrcode/QRCodeWriter;-><init>()V
goto :goto_0
.line 70
:pswitch_9
new-instance v0, Lcom/google/zxing/oned/UPCAWriter;
invoke-direct {v0}, Lcom/google/zxing/oned/UPCAWriter;-><init>()V
goto :goto_0
.line 67
:pswitch_a
new-instance v0, Lcom/google/zxing/oned/EAN13Writer;
invoke-direct {v0}, Lcom/google/zxing/oned/EAN13Writer;-><init>()V
goto :goto_0
.line 64
:pswitch_b
new-instance v0, Lcom/google/zxing/oned/UPCEWriter;
invoke-direct {v0}, Lcom/google/zxing/oned/UPCEWriter;-><init>()V
goto :goto_0
.line 61
:pswitch_c
new-instance v0, Lcom/google/zxing/oned/EAN8Writer;
invoke-direct {v0}, Lcom/google/zxing/oned/EAN8Writer;-><init>()V
goto :goto_0
:goto_1
move-object v2, p1
move-object v3, p2
move v4, p3
move v5, p4
move-object v6, p5
.line 102
invoke-interface/range {v1 .. v6}, Lcom/google/zxing/Writer;->encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
:pswitch_data_0
.packed-switch 0x1
:pswitch_c
:pswitch_b
:pswitch_a
:pswitch_9
:pswitch_8
:pswitch_7
:pswitch_6
:pswitch_5
:pswitch_4
:pswitch_3
:pswitch_2
:pswitch_1
:pswitch_0
.end packed-switch
.end method

View File

@@ -0,0 +1,66 @@
.class public abstract Lcom/google/zxing/ReaderException;
.super Ljava/lang/Exception;
.source "SourceFile"
# static fields
.field public static final NO_TRACE:[Ljava/lang/StackTraceElement;
.field public static final isStackTrace:Z
# direct methods
.method static constructor <clinit>()V
.locals 2
const-string v0, "surefire.test.class.path"
.line 30
invoke-static {v0}, Ljava/lang/System;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
const/4 v1, 0x0
if-eqz v0, :cond_0
const/4 v0, 0x1
goto :goto_0
:cond_0
move v0, v1
:goto_0
sput-boolean v0, Lcom/google/zxing/ReaderException;->isStackTrace:Z
new-array v0, v1, [Ljava/lang/StackTraceElement;
sput-object v0, Lcom/google/zxing/ReaderException;->NO_TRACE:[Ljava/lang/StackTraceElement;
return-void
.end method
.method public constructor <init>()V
.locals 0
.line 33
invoke-direct {p0}, Ljava/lang/Exception;-><init>()V
return-void
.end method
# virtual methods
.method public final declared-synchronized fillInStackTrace()Ljava/lang/Throwable;
.locals 1
monitor-enter p0
.line 44
monitor-exit p0
const/4 v0, 0x0
return-object v0
.end method

View File

@@ -0,0 +1,8 @@
.class public interface abstract Lcom/google/zxing/Writer;
.super Ljava/lang/Object;
.source "SourceFile"
# virtual methods
.method public abstract encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.end method

View File

@@ -0,0 +1,32 @@
.class public final Lcom/google/zxing/WriterException;
.super Ljava/lang/Exception;
.source "SourceFile"
# direct methods
.method public constructor <init>()V
.locals 0
.line 27
invoke-direct {p0}, Ljava/lang/Exception;-><init>()V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;)V
.locals 0
.line 31
invoke-direct {p0, p1}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/Throwable;)V
.locals 0
.line 35
invoke-direct {p0, p1}, Ljava/lang/Exception;-><init>(Ljava/lang/Throwable;)V
return-void
.end method

View File

@@ -0,0 +1,273 @@
.class public final Lcom/google/zxing/aztec/AztecWriter;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/google/zxing/Writer;
# direct methods
.method public constructor <init>()V
.locals 0
.line 33
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/nio/charset/Charset;II)Lcom/google/zxing/common/BitMatrix;
.locals 1
.line 62
sget-object v0, Lcom/google/zxing/BarcodeFormat;->AZTEC:Lcom/google/zxing/BarcodeFormat;
if-ne p1, v0, :cond_0
.line 65
invoke-virtual {p0, p4}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B
move-result-object p0
invoke-static {p0, p5, p6}, Lcom/google/zxing/aztec/encoder/Encoder;->encode([BII)Lcom/google/zxing/aztec/encoder/AztecCode;
move-result-object p0
.line 66
invoke-static {p0, p2, p3}, Lcom/google/zxing/aztec/AztecWriter;->renderResult(Lcom/google/zxing/aztec/encoder/AztecCode;II)Lcom/google/zxing/common/BitMatrix;
move-result-object p0
return-object p0
.line 63
:cond_0
new-instance p0, Ljava/lang/IllegalArgumentException;
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
const-string p2, "Can only encode AZTEC, but got "
invoke-virtual {p2, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.end method
.method public static renderResult(Lcom/google/zxing/aztec/encoder/AztecCode;II)Lcom/google/zxing/common/BitMatrix;
.locals 9
.line 70
invoke-virtual {p0}, Lcom/google/zxing/aztec/encoder/AztecCode;->getMatrix()Lcom/google/zxing/common/BitMatrix;
move-result-object p0
if-eqz p0, :cond_3
.line 74
invoke-virtual {p0}, Lcom/google/zxing/common/BitMatrix;->getWidth()I
move-result v0
.line 75
invoke-virtual {p0}, Lcom/google/zxing/common/BitMatrix;->getHeight()I
move-result v1
.line 76
invoke-static {p1, v0}, Ljava/lang/Math;->max(II)I
move-result p1
.line 77
invoke-static {p2, v1}, Ljava/lang/Math;->max(II)I
move-result p2
.line 79
div-int v2, p1, v0
div-int v3, p2, v1
invoke-static {v2, v3}, Ljava/lang/Math;->min(II)I
move-result v2
mul-int v3, v0, v2
sub-int v3, p1, v3
.line 80
div-int/lit8 v3, v3, 0x2
mul-int v4, v1, v2
sub-int v4, p2, v4
.line 81
div-int/lit8 v4, v4, 0x2
.line 83
new-instance v5, Lcom/google/zxing/common/BitMatrix;
invoke-direct {v5, p1, p2}, Lcom/google/zxing/common/BitMatrix;-><init>(II)V
const/4 p1, 0x0
move p2, p1
:goto_0
if-ge p2, v1, :cond_2
move v6, p1
move v7, v3
:goto_1
if-ge v6, v0, :cond_1
.line 88
invoke-virtual {p0, v6, p2}, Lcom/google/zxing/common/BitMatrix;->get(II)Z
move-result v8
if-eqz v8, :cond_0
.line 89
invoke-virtual {v5, v7, v4, v2, v2}, Lcom/google/zxing/common/BitMatrix;->setRegion(IIII)V
:cond_0
add-int/lit8 v6, v6, 0x1
add-int/2addr v7, v2
goto :goto_1
:cond_1
add-int/lit8 p2, p2, 0x1
add-int/2addr v4, v2
goto :goto_0
:cond_2
return-object v5
.line 72
:cond_3
new-instance p0, Ljava/lang/IllegalStateException;
invoke-direct {p0}, Ljava/lang/IllegalStateException;-><init>()V
throw p0
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 10
.line 42
sget-object v0, Ljava/nio/charset/StandardCharsets;->ISO_8859_1:Ljava/nio/charset/Charset;
const/16 v1, 0x21
const/4 v2, 0x0
if-eqz p5, :cond_2
.line 46
sget-object v3, Lcom/google/zxing/EncodeHintType;->CHARACTER_SET:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v3}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_0
.line 47
invoke-interface {p5, v3}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Ljava/nio/charset/Charset;->forName(Ljava/lang/String;)Ljava/nio/charset/Charset;
move-result-object v0
.line 49
:cond_0
sget-object v3, Lcom/google/zxing/EncodeHintType;->ERROR_CORRECTION:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v3}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_1
.line 50
invoke-interface {p5, v3}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v1
.line 52
:cond_1
sget-object v3, Lcom/google/zxing/EncodeHintType;->AZTEC_LAYERS:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v3}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_2
.line 53
invoke-interface {p5, v3}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p5
invoke-virtual {p5}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p5
invoke-static {p5}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v2
:cond_2
move-object v7, v0
move v8, v1
move v9, v2
move-object v3, p1
move-object v4, p2
move v5, p3
move v6, p4
.line 56
invoke-static/range {v3 .. v9}, Lcom/google/zxing/aztec/AztecWriter;->encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/nio/charset/Charset;II)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
.end method

View File

@@ -0,0 +1,76 @@
.class public final Lcom/google/zxing/aztec/encoder/AztecCode;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field public codeWords:I
.field public compact:Z
.field public layers:I
.field public matrix:Lcom/google/zxing/common/BitMatrix;
.field public size:I
# direct methods
.method public constructor <init>()V
.locals 0
.line 26
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public getMatrix()Lcom/google/zxing/common/BitMatrix;
.locals 1
iget-object v0, p0, Lcom/google/zxing/aztec/encoder/AztecCode;->matrix:Lcom/google/zxing/common/BitMatrix;
return-object v0
.end method
.method public setCodeWords(I)V
.locals 0
iput p1, p0, Lcom/google/zxing/aztec/encoder/AztecCode;->codeWords:I
return-void
.end method
.method public setCompact(Z)V
.locals 0
iput-boolean p1, p0, Lcom/google/zxing/aztec/encoder/AztecCode;->compact:Z
return-void
.end method
.method public setLayers(I)V
.locals 0
iput p1, p0, Lcom/google/zxing/aztec/encoder/AztecCode;->layers:I
return-void
.end method
.method public setMatrix(Lcom/google/zxing/common/BitMatrix;)V
.locals 0
iput-object p1, p0, Lcom/google/zxing/aztec/encoder/AztecCode;->matrix:Lcom/google/zxing/common/BitMatrix;
return-void
.end method
.method public setSize(I)V
.locals 0
iput p1, p0, Lcom/google/zxing/aztec/encoder/AztecCode;->size:I
return-void
.end method

View File

@@ -0,0 +1,147 @@
.class public final Lcom/google/zxing/aztec/encoder/BinaryShiftToken;
.super Lcom/google/zxing/aztec/encoder/Token;
.source "SourceFile"
# instance fields
.field public final binaryShiftByteCount:S
.field public final binaryShiftStart:S
# direct methods
.method public constructor <init>(Lcom/google/zxing/aztec/encoder/Token;II)V
.locals 0
.line 29
invoke-direct {p0, p1}, Lcom/google/zxing/aztec/encoder/Token;-><init>(Lcom/google/zxing/aztec/encoder/Token;)V
int-to-short p1, p2
iput-short p1, p0, Lcom/google/zxing/aztec/encoder/BinaryShiftToken;->binaryShiftStart:S
int-to-short p1, p3
iput-short p1, p0, Lcom/google/zxing/aztec/encoder/BinaryShiftToken;->binaryShiftByteCount:S
return-void
.end method
# virtual methods
.method public appendTo(Lcom/google/zxing/common/BitArray;[B)V
.locals 5
const/4 v0, 0x0
:goto_0
iget-short v1, p0, Lcom/google/zxing/aztec/encoder/BinaryShiftToken;->binaryShiftByteCount:S
if-ge v0, v1, :cond_4
const/16 v2, 0x3e
const/16 v3, 0x1f
if-eqz v0, :cond_0
if-ne v0, v3, :cond_3
if-gt v1, v2, :cond_3
:cond_0
const/4 v1, 0x5
.line 40
invoke-virtual {p1, v3, v1}, Lcom/google/zxing/common/BitArray;->appendBits(II)V
iget-short v4, p0, Lcom/google/zxing/aztec/encoder/BinaryShiftToken;->binaryShiftByteCount:S
if-le v4, v2, :cond_1
add-int/lit8 v4, v4, -0x1f
const/16 v1, 0x10
.line 42
invoke-virtual {p1, v4, v1}, Lcom/google/zxing/common/BitArray;->appendBits(II)V
goto :goto_1
:cond_1
if-nez v0, :cond_2
.line 45
invoke-static {v4, v3}, Ljava/lang/Math;->min(II)I
move-result v2
invoke-virtual {p1, v2, v1}, Lcom/google/zxing/common/BitArray;->appendBits(II)V
goto :goto_1
:cond_2
add-int/lit8 v4, v4, -0x1f
.line 48
invoke-virtual {p1, v4, v1}, Lcom/google/zxing/common/BitArray;->appendBits(II)V
:cond_3
:goto_1
iget-short v1, p0, Lcom/google/zxing/aztec/encoder/BinaryShiftToken;->binaryShiftStart:S
add-int/2addr v1, v0
.line 51
aget-byte v1, p2, v1
const/16 v2, 0x8
invoke-virtual {p1, v1, v2}, Lcom/google/zxing/common/BitArray;->appendBits(II)V
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_4
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 3
.line 57
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "<"
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-short v1, p0, Lcom/google/zxing/aztec/encoder/BinaryShiftToken;->binaryShiftStart:S
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v1, "::"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-short v1, p0, Lcom/google/zxing/aztec/encoder/BinaryShiftToken;->binaryShiftStart:S
iget-short v2, p0, Lcom/google/zxing/aztec/encoder/BinaryShiftToken;->binaryShiftByteCount:S
add-int/2addr v1, v2
add-int/lit8 v1, v1, -0x1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const/16 v1, 0x3e
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,68 @@
.class public Lcom/google/zxing/aztec/encoder/HighLevelEncoder$1;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/util/Comparator;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->encode()Lcom/google/zxing/common/BitArray;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic this$0:Lcom/google/zxing/aztec/encoder/HighLevelEncoder;
# direct methods
.method public constructor <init>(Lcom/google/zxing/aztec/encoder/HighLevelEncoder;)V
.locals 0
iput-object p1, p0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder$1;->this$0:Lcom/google/zxing/aztec/encoder/HighLevelEncoder;
.line 192
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public compare(Lcom/google/zxing/aztec/encoder/State;Lcom/google/zxing/aztec/encoder/State;)I
.locals 0
.line 195
invoke-virtual {p1}, Lcom/google/zxing/aztec/encoder/State;->getBitCount()I
move-result p1
invoke-virtual {p2}, Lcom/google/zxing/aztec/encoder/State;->getBitCount()I
move-result p2
sub-int/2addr p1, p2
return p1
.end method
.method public bridge synthetic compare(Ljava/lang/Object;Ljava/lang/Object;)I
.locals 0
.line 192
check-cast p1, Lcom/google/zxing/aztec/encoder/State;
check-cast p2, Lcom/google/zxing/aztec/encoder/State;
invoke-virtual {p0, p1, p2}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder$1;->compare(Lcom/google/zxing/aztec/encoder/State;Lcom/google/zxing/aztec/encoder/State;)I
move-result p1
return p1
.end method

View File

@@ -0,0 +1,956 @@
.class public final Lcom/google/zxing/aztec/encoder/HighLevelEncoder;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static final CHAR_MAP:[[I
.field public static final LATCH_TABLE:[[I
.field public static final MODE_NAMES:[Ljava/lang/String;
.field public static final SHIFT_TABLE:[[I
# instance fields
.field public final text:[B
# direct methods
.method static constructor <clinit>()V
.locals 12
const-string v0, "MIXED"
const-string v1, "PUNCT"
const-string v2, "UPPER"
const-string v3, "LOWER"
const-string v4, "DIGIT"
filled-new-array {v2, v3, v4, v0, v1}, [Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->MODE_NAMES:[Ljava/lang/String;
const/4 v0, 0x5
new-array v1, v0, [[I
const/4 v2, 0x0
const v3, 0x5001c
const v4, 0x5001e
const v5, 0x5001d
const v6, 0xa03be
filled-new-array {v2, v3, v4, v5, v6}, [I
move-result-object v7
aput-object v7, v1, v2
const v7, 0x901ee
filled-new-array {v7, v2, v4, v5, v6}, [I
move-result-object v7
const/4 v8, 0x1
aput-object v7, v1, v8
const v7, 0x901dd
const v9, 0xe3bbe
const v10, 0x4000e
const v11, 0x901dc
filled-new-array {v10, v11, v2, v7, v9}, [I
move-result-object v7
const/4 v9, 0x2
aput-object v7, v1, v9
filled-new-array {v5, v3, v6, v2, v4}, [I
move-result-object v3
const/4 v4, 0x3
aput-object v3, v1, v4
const v3, 0xa03fe
const v5, 0xa03fd
const v6, 0x5001f
const v7, 0xa03fc
filled-new-array {v6, v7, v3, v5, v2}, [I
move-result-object v3
const/4 v5, 0x4
aput-object v3, v1, v5
sput-object v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->LATCH_TABLE:[[I
const/16 v1, 0x100
filled-new-array {v0, v1}, [I
move-result-object v0
sget-object v1, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
.line 97
invoke-static {v1, v0}, Ljava/lang/reflect/Array;->newInstance(Ljava/lang/Class;[I)Ljava/lang/Object;
move-result-object v0
check-cast v0, [[I
sput-object v0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
.line 99
aget-object v0, v0, v2
const/16 v1, 0x20
aput v8, v0, v1
const/16 v0, 0x41
:goto_0
const/16 v3, 0x5a
if-gt v0, v3, :cond_0
sget-object v3, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
.line 101
aget-object v3, v3, v2
add-int/lit8 v6, v0, -0x3f
aput v6, v3, v0
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_0
sget-object v0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
.line 103
aget-object v0, v0, v8
aput v8, v0, v1
const/16 v0, 0x61
:goto_1
const/16 v3, 0x7a
if-gt v0, v3, :cond_1
sget-object v3, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
.line 105
aget-object v3, v3, v8
add-int/lit8 v6, v0, -0x5f
aput v6, v3, v0
add-int/lit8 v0, v0, 0x1
goto :goto_1
:cond_1
sget-object v0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
.line 107
aget-object v0, v0, v9
aput v8, v0, v1
const/16 v0, 0x30
:goto_2
const/16 v1, 0x39
if-gt v0, v1, :cond_2
sget-object v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
.line 109
aget-object v1, v1, v9
add-int/lit8 v3, v0, -0x2e
aput v3, v1, v0
add-int/lit8 v0, v0, 0x1
goto :goto_2
:cond_2
sget-object v0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
.line 111
aget-object v0, v0, v9
const/16 v1, 0x2c
const/16 v3, 0xc
aput v3, v0, v1
const/16 v1, 0xd
const/16 v3, 0x2e
.line 112
aput v1, v0, v3
const/16 v0, 0x1c
new-array v1, v0, [I
fill-array-data v1, :array_0
move v3, v2
:goto_3
if-ge v3, v0, :cond_3
sget-object v6, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
.line 119
aget-object v6, v6, v4
aget v7, v1, v3
aput v3, v6, v7
add-int/lit8 v3, v3, 0x1
goto :goto_3
:cond_3
const/16 v1, 0x1f
new-array v3, v1, [I
fill-array-data v3, :array_1
move v6, v2
:goto_4
if-ge v6, v1, :cond_5
.line 127
aget v7, v3, v6
if-lez v7, :cond_4
sget-object v10, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
.line 128
aget-object v10, v10, v5
aput v6, v10, v7
:cond_4
add-int/lit8 v6, v6, 0x1
goto :goto_4
:cond_5
const/4 v1, 0x6
filled-new-array {v1, v1}, [I
move-result-object v1
sget-object v3, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
.line 135
invoke-static {v3, v1}, Ljava/lang/reflect/Array;->newInstance(Ljava/lang/Class;[I)Ljava/lang/Object;
move-result-object v1
check-cast v1, [[I
sput-object v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->SHIFT_TABLE:[[I
.line 137
array-length v3, v1
move v6, v2
:goto_5
if-ge v6, v3, :cond_6
aget-object v7, v1, v6
const/4 v10, -0x1
.line 138
invoke-static {v7, v10}, Ljava/util/Arrays;->fill([II)V
add-int/lit8 v6, v6, 0x1
goto :goto_5
:cond_6
sget-object v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->SHIFT_TABLE:[[I
.line 140
aget-object v3, v1, v2
aput v2, v3, v5
.line 142
aget-object v3, v1, v8
aput v2, v3, v5
.line 143
aput v0, v3, v2
.line 145
aget-object v0, v1, v4
aput v2, v0, v5
.line 147
aget-object v0, v1, v9
aput v2, v0, v5
const/16 v1, 0xf
.line 148
aput v1, v0, v2
return-void
nop
:array_0
.array-data 4
0x0
0x20
0x1
0x2
0x3
0x4
0x5
0x6
0x7
0x8
0x9
0xa
0xb
0xc
0xd
0x1b
0x1c
0x1d
0x1e
0x1f
0x40
0x5c
0x5e
0x5f
0x60
0x7c
0x7e
0x7f
.end array-data
:array_1
.array-data 4
0x0
0xd
0x0
0x0
0x0
0x0
0x21
0x27
0x23
0x24
0x25
0x26
0x27
0x28
0x29
0x2a
0x2b
0x2c
0x2d
0x2e
0x2f
0x3a
0x3b
0x3c
0x3d
0x3e
0x3f
0x5b
0x5d
0x7b
0x7d
.end array-data
.end method
.method public constructor <init>([B)V
.locals 0
.line 153
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->text:[B
return-void
.end method
.method public static simplifyStates(Ljava/lang/Iterable;)Ljava/util/Collection;
.locals 5
.line 287
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
.line 288
invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object p0
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_3
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/google/zxing/aztec/encoder/State;
.line 290
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v2
:cond_0
:goto_1
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_2
.line 291
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcom/google/zxing/aztec/encoder/State;
.line 292
invoke-virtual {v3, v1}, Lcom/google/zxing/aztec/encoder/State;->isBetterThanOrEqualTo(Lcom/google/zxing/aztec/encoder/State;)Z
move-result v4
if-eqz v4, :cond_1
goto :goto_0
.line 296
:cond_1
invoke-virtual {v1, v3}, Lcom/google/zxing/aztec/encoder/State;->isBetterThanOrEqualTo(Lcom/google/zxing/aztec/encoder/State;)Z
move-result v3
if-eqz v3, :cond_0
.line 297
invoke-interface {v2}, Ljava/util/Iterator;->remove()V
goto :goto_1
.line 301
:cond_2
invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_0
:cond_3
return-object v0
.end method
.method public static updateStateForPair(Lcom/google/zxing/aztec/encoder/State;IILjava/util/Collection;)V
.locals 4
.line 263
invoke-virtual {p0, p1}, Lcom/google/zxing/aztec/encoder/State;->endBinaryShift(I)Lcom/google/zxing/aztec/encoder/State;
move-result-object v0
const/4 v1, 0x4
.line 265
invoke-virtual {v0, v1, p2}, Lcom/google/zxing/aztec/encoder/State;->latchAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
move-result-object v2
invoke-interface {p3, v2}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
.line 266
invoke-virtual {p0}, Lcom/google/zxing/aztec/encoder/State;->getMode()I
move-result v2
if-eq v2, v1, :cond_0
.line 269
invoke-virtual {v0, v1, p2}, Lcom/google/zxing/aztec/encoder/State;->shiftAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
move-result-object v2
invoke-interface {p3, v2}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
:cond_0
const/4 v2, 0x3
const/4 v3, 0x1
if-eq p2, v2, :cond_1
if-ne p2, v1, :cond_2
:cond_1
rsub-int/lit8 p2, p2, 0x10
const/4 v1, 0x2
.line 274
invoke-virtual {v0, v1, p2}, Lcom/google/zxing/aztec/encoder/State;->latchAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
move-result-object p2
.line 275
invoke-virtual {p2, v1, v3}, Lcom/google/zxing/aztec/encoder/State;->latchAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
move-result-object p2
.line 276
invoke-interface {p3, p2}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
.line 278
:cond_2
invoke-virtual {p0}, Lcom/google/zxing/aztec/encoder/State;->getBinaryShiftByteCount()I
move-result p2
if-lez p2, :cond_3
.line 281
invoke-virtual {p0, p1}, Lcom/google/zxing/aztec/encoder/State;->addBinaryShiftChar(I)Lcom/google/zxing/aztec/encoder/State;
move-result-object p0
add-int/2addr p1, v3
invoke-virtual {p0, p1}, Lcom/google/zxing/aztec/encoder/State;->addBinaryShiftChar(I)Lcom/google/zxing/aztec/encoder/State;
move-result-object p0
.line 282
invoke-interface {p3, p0}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
:cond_3
return-void
.end method
.method public static updateStateListForPair(Ljava/lang/Iterable;II)Ljava/util/Collection;
.locals 2
.line 255
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
.line 256
invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object p0
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/google/zxing/aztec/encoder/State;
.line 257
invoke-static {v1, p1, p2, v0}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->updateStateForPair(Lcom/google/zxing/aztec/encoder/State;IILjava/util/Collection;)V
goto :goto_0
.line 259
:cond_0
invoke-static {v0}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->simplifyStates(Ljava/lang/Iterable;)Ljava/util/Collection;
move-result-object p0
return-object p0
.end method
# virtual methods
.method public encode()Lcom/google/zxing/common/BitArray;
.locals 8
.line 161
sget-object v0, Lcom/google/zxing/aztec/encoder/State;->INITIAL_STATE:Lcom/google/zxing/aztec/encoder/State;
invoke-static {v0}, Ljava/util/Collections;->singletonList(Ljava/lang/Object;)Ljava/util/List;
move-result-object v0
const/4 v1, 0x0
move v2, v1
:goto_0
iget-object v3, p0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->text:[B
.line 162
array-length v4, v3
if-ge v2, v4, :cond_7
add-int/lit8 v4, v2, 0x1
.line 164
array-length v5, v3
if-ge v4, v5, :cond_0
aget-byte v5, v3, v4
goto :goto_1
:cond_0
move v5, v1
.line 165
:goto_1
aget-byte v3, v3, v2
const/16 v6, 0xd
if-eq v3, v6, :cond_5
const/16 v6, 0x2c
const/16 v7, 0x20
if-eq v3, v6, :cond_4
const/16 v6, 0x2e
if-eq v3, v6, :cond_3
const/16 v6, 0x3a
if-eq v3, v6, :cond_2
:cond_1
move v3, v1
goto :goto_2
:cond_2
if-ne v5, v7, :cond_1
const/4 v3, 0x5
goto :goto_2
:cond_3
if-ne v5, v7, :cond_1
const/4 v3, 0x3
goto :goto_2
:cond_4
if-ne v5, v7, :cond_1
const/4 v3, 0x4
goto :goto_2
:cond_5
const/16 v3, 0xa
if-ne v5, v3, :cond_1
const/4 v3, 0x2
:goto_2
if-lez v3, :cond_6
.line 184
invoke-static {v0, v2, v3}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->updateStateListForPair(Ljava/lang/Iterable;II)Ljava/util/Collection;
move-result-object v0
move v2, v4
goto :goto_3
.line 188
:cond_6
invoke-virtual {p0, v0, v2}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->updateStateListForChar(Ljava/lang/Iterable;I)Ljava/util/Collection;
move-result-object v0
:goto_3
add-int/lit8 v2, v2, 0x1
goto :goto_0
.line 192
:cond_7
new-instance v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder$1;
invoke-direct {v1, p0}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder$1;-><init>(Lcom/google/zxing/aztec/encoder/HighLevelEncoder;)V
invoke-static {v0, v1}, Ljava/util/Collections;->min(Ljava/util/Collection;Ljava/util/Comparator;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/zxing/aztec/encoder/State;
iget-object v1, p0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->text:[B
.line 199
invoke-virtual {v0, v1}, Lcom/google/zxing/aztec/encoder/State;->toBitArray([B)Lcom/google/zxing/common/BitArray;
move-result-object v0
return-object v0
.end method
.method public final updateStateForChar(Lcom/google/zxing/aztec/encoder/State;ILjava/util/Collection;)V
.locals 7
iget-object v0, p0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->text:[B
.line 217
aget-byte v0, v0, p2
and-int/lit16 v0, v0, 0xff
int-to-char v0, v0
sget-object v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
.line 218
invoke-virtual {p1}, Lcom/google/zxing/aztec/encoder/State;->getMode()I
move-result v2
aget-object v1, v1, v2
aget v1, v1, v0
const/4 v2, 0x0
if-lez v1, :cond_0
const/4 v1, 0x1
goto :goto_0
:cond_0
move v1, v2
:goto_0
const/4 v3, 0x0
:goto_1
const/4 v4, 0x4
if-gt v2, v4, :cond_5
sget-object v4, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
.line 221
aget-object v4, v4, v2
aget v4, v4, v0
if-lez v4, :cond_4
if-nez v3, :cond_1
.line 225
invoke-virtual {p1, p2}, Lcom/google/zxing/aztec/encoder/State;->endBinaryShift(I)Lcom/google/zxing/aztec/encoder/State;
move-result-object v3
:cond_1
if-eqz v1, :cond_2
.line 228
invoke-virtual {p1}, Lcom/google/zxing/aztec/encoder/State;->getMode()I
move-result v5
if-eq v2, v5, :cond_2
const/4 v5, 0x2
if-ne v2, v5, :cond_3
.line 233
:cond_2
invoke-virtual {v3, v2, v4}, Lcom/google/zxing/aztec/encoder/State;->latchAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
move-result-object v5
.line 234
invoke-interface {p3, v5}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
:cond_3
if-nez v1, :cond_4
sget-object v5, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->SHIFT_TABLE:[[I
.line 237
invoke-virtual {p1}, Lcom/google/zxing/aztec/encoder/State;->getMode()I
move-result v6
aget-object v5, v5, v6
aget v5, v5, v2
if-ltz v5, :cond_4
.line 240
invoke-virtual {v3, v2, v4}, Lcom/google/zxing/aztec/encoder/State;->shiftAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
move-result-object v4
.line 241
invoke-interface {p3, v4}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
:cond_4
add-int/lit8 v2, v2, 0x1
goto :goto_1
.line 245
:cond_5
invoke-virtual {p1}, Lcom/google/zxing/aztec/encoder/State;->getBinaryShiftByteCount()I
move-result v1
if-gtz v1, :cond_6
sget-object v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->CHAR_MAP:[[I
invoke-virtual {p1}, Lcom/google/zxing/aztec/encoder/State;->getMode()I
move-result v2
aget-object v1, v1, v2
aget v0, v1, v0
if-nez v0, :cond_7
.line 249
:cond_6
invoke-virtual {p1, p2}, Lcom/google/zxing/aztec/encoder/State;->addBinaryShiftChar(I)Lcom/google/zxing/aztec/encoder/State;
move-result-object p1
.line 250
invoke-interface {p3, p1}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
:cond_7
return-void
.end method
.method public final updateStateListForChar(Ljava/lang/Iterable;I)Ljava/util/Collection;
.locals 2
.line 206
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
.line 207
invoke-interface {p1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object p1
:goto_0
invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/google/zxing/aztec/encoder/State;
.line 208
invoke-virtual {p0, v1, p2, v0}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->updateStateForChar(Lcom/google/zxing/aztec/encoder/State;ILjava/util/Collection;)V
goto :goto_0
.line 210
:cond_0
invoke-static {v0}, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->simplifyStates(Ljava/lang/Iterable;)Ljava/util/Collection;
move-result-object p1
return-object p1
.end method

View File

@@ -0,0 +1,96 @@
.class public final Lcom/google/zxing/aztec/encoder/SimpleToken;
.super Lcom/google/zxing/aztec/encoder/Token;
.source "SourceFile"
# instance fields
.field public final bitCount:S
.field public final value:S
# direct methods
.method public constructor <init>(Lcom/google/zxing/aztec/encoder/Token;II)V
.locals 0
.line 28
invoke-direct {p0, p1}, Lcom/google/zxing/aztec/encoder/Token;-><init>(Lcom/google/zxing/aztec/encoder/Token;)V
int-to-short p1, p2
iput-short p1, p0, Lcom/google/zxing/aztec/encoder/SimpleToken;->value:S
int-to-short p1, p3
iput-short p1, p0, Lcom/google/zxing/aztec/encoder/SimpleToken;->bitCount:S
return-void
.end method
# virtual methods
.method public appendTo(Lcom/google/zxing/common/BitArray;[B)V
.locals 1
iget-short p2, p0, Lcom/google/zxing/aztec/encoder/SimpleToken;->value:S
iget-short v0, p0, Lcom/google/zxing/aztec/encoder/SimpleToken;->bitCount:S
.line 35
invoke-virtual {p1, p2, v0}, Lcom/google/zxing/common/BitArray;->appendBits(II)V
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 4
iget-short v0, p0, Lcom/google/zxing/aztec/encoder/SimpleToken;->value:S
iget-short v1, p0, Lcom/google/zxing/aztec/encoder/SimpleToken;->bitCount:S
const/4 v2, 0x1
shl-int v3, v2, v1
sub-int/2addr v3, v2
and-int/2addr v0, v3
shl-int v1, v2, v1
or-int/2addr v0, v1
.line 42
new-instance v1, Ljava/lang/StringBuilder;
const-string v3, "<"
invoke-direct {v1, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-short v3, p0, Lcom/google/zxing/aztec/encoder/SimpleToken;->bitCount:S
shl-int v3, v2, v3
or-int/2addr v0, v3
invoke-static {v0}, Ljava/lang/Integer;->toBinaryString(I)Ljava/lang/String;
move-result-object v0
invoke-virtual {v0, v2}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/16 v0, 0x3e
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,474 @@
.class public final Lcom/google/zxing/aztec/encoder/State;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static final INITIAL_STATE:Lcom/google/zxing/aztec/encoder/State;
# instance fields
.field public final binaryShiftByteCount:I
.field public final bitCount:I
.field public final mode:I
.field public final token:Lcom/google/zxing/aztec/encoder/Token;
# direct methods
.method static constructor <clinit>()V
.locals 3
.line 30
new-instance v0, Lcom/google/zxing/aztec/encoder/State;
sget-object v1, Lcom/google/zxing/aztec/encoder/Token;->EMPTY:Lcom/google/zxing/aztec/encoder/Token;
const/4 v2, 0x0
invoke-direct {v0, v1, v2, v2, v2}, Lcom/google/zxing/aztec/encoder/State;-><init>(Lcom/google/zxing/aztec/encoder/Token;III)V
sput-object v0, Lcom/google/zxing/aztec/encoder/State;->INITIAL_STATE:Lcom/google/zxing/aztec/encoder/State;
return-void
.end method
.method public constructor <init>(Lcom/google/zxing/aztec/encoder/Token;III)V
.locals 0
.line 44
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lcom/google/zxing/aztec/encoder/State;->token:Lcom/google/zxing/aztec/encoder/Token;
iput p2, p0, Lcom/google/zxing/aztec/encoder/State;->mode:I
iput p3, p0, Lcom/google/zxing/aztec/encoder/State;->binaryShiftByteCount:I
iput p4, p0, Lcom/google/zxing/aztec/encoder/State;->bitCount:I
return-void
.end method
# virtual methods
.method public addBinaryShiftChar(I)Lcom/google/zxing/aztec/encoder/State;
.locals 6
iget-object v0, p0, Lcom/google/zxing/aztec/encoder/State;->token:Lcom/google/zxing/aztec/encoder/Token;
iget v1, p0, Lcom/google/zxing/aztec/encoder/State;->mode:I
iget v2, p0, Lcom/google/zxing/aztec/encoder/State;->bitCount:I
const/4 v3, 0x4
if-eq v1, v3, :cond_0
const/4 v3, 0x2
if-ne v1, v3, :cond_1
.line 109
:cond_0
sget-object v3, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->LATCH_TABLE:[[I
aget-object v1, v3, v1
const/4 v3, 0x0
aget v1, v1, v3
const v4, 0xffff
and-int/2addr v4, v1
shr-int/lit8 v1, v1, 0x10
.line 110
invoke-virtual {v0, v4, v1}, Lcom/google/zxing/aztec/encoder/Token;->add(II)Lcom/google/zxing/aztec/encoder/Token;
move-result-object v0
add-int/2addr v2, v1
move v1, v3
:cond_1
iget v3, p0, Lcom/google/zxing/aztec/encoder/State;->binaryShiftByteCount:I
if-eqz v3, :cond_4
const/16 v4, 0x1f
if-ne v3, v4, :cond_2
goto :goto_0
:cond_2
const/16 v4, 0x3e
if-ne v3, v4, :cond_3
const/16 v4, 0x9
goto :goto_1
:cond_3
const/16 v4, 0x8
goto :goto_1
:cond_4
:goto_0
const/16 v4, 0x12
.line 117
:goto_1
new-instance v5, Lcom/google/zxing/aztec/encoder/State;
add-int/lit8 v3, v3, 0x1
add-int/2addr v2, v4
invoke-direct {v5, v0, v1, v3, v2}, Lcom/google/zxing/aztec/encoder/State;-><init>(Lcom/google/zxing/aztec/encoder/Token;III)V
iget v0, v5, Lcom/google/zxing/aztec/encoder/State;->binaryShiftByteCount:I
const/16 v1, 0x81e
if-ne v0, v1, :cond_5
add-int/lit8 p1, p1, 0x1
.line 120
invoke-virtual {v5, p1}, Lcom/google/zxing/aztec/encoder/State;->endBinaryShift(I)Lcom/google/zxing/aztec/encoder/State;
move-result-object v5
:cond_5
return-object v5
.end method
.method public endBinaryShift(I)Lcom/google/zxing/aztec/encoder/State;
.locals 4
iget v0, p0, Lcom/google/zxing/aztec/encoder/State;->binaryShiftByteCount:I
if-nez v0, :cond_0
return-object p0
:cond_0
iget-object v1, p0, Lcom/google/zxing/aztec/encoder/State;->token:Lcom/google/zxing/aztec/encoder/Token;
sub-int/2addr p1, v0
.line 132
invoke-virtual {v1, p1, v0}, Lcom/google/zxing/aztec/encoder/Token;->addBinaryShift(II)Lcom/google/zxing/aztec/encoder/Token;
move-result-object p1
.line 134
new-instance v0, Lcom/google/zxing/aztec/encoder/State;
iget v1, p0, Lcom/google/zxing/aztec/encoder/State;->mode:I
const/4 v2, 0x0
iget v3, p0, Lcom/google/zxing/aztec/encoder/State;->bitCount:I
invoke-direct {v0, p1, v1, v2, v3}, Lcom/google/zxing/aztec/encoder/State;-><init>(Lcom/google/zxing/aztec/encoder/Token;III)V
return-object v0
.end method
.method public getBinaryShiftByteCount()I
.locals 1
iget v0, p0, Lcom/google/zxing/aztec/encoder/State;->binaryShiftByteCount:I
return v0
.end method
.method public getBitCount()I
.locals 1
iget v0, p0, Lcom/google/zxing/aztec/encoder/State;->bitCount:I
return v0
.end method
.method public getMode()I
.locals 1
iget v0, p0, Lcom/google/zxing/aztec/encoder/State;->mode:I
return v0
.end method
.method public isBetterThanOrEqualTo(Lcom/google/zxing/aztec/encoder/State;)Z
.locals 3
iget v0, p0, Lcom/google/zxing/aztec/encoder/State;->bitCount:I
.line 140
sget-object v1, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->LATCH_TABLE:[[I
iget v2, p0, Lcom/google/zxing/aztec/encoder/State;->mode:I
aget-object v1, v1, v2
iget v2, p1, Lcom/google/zxing/aztec/encoder/State;->mode:I
aget v1, v1, v2
shr-int/lit8 v1, v1, 0x10
add-int/2addr v0, v1
.line 141
iget v1, p1, Lcom/google/zxing/aztec/encoder/State;->binaryShiftByteCount:I
if-lez v1, :cond_1
iget v2, p0, Lcom/google/zxing/aztec/encoder/State;->binaryShiftByteCount:I
if-eqz v2, :cond_0
if-le v2, v1, :cond_1
:cond_0
add-int/lit8 v0, v0, 0xa
.line 145
:cond_1
iget p1, p1, Lcom/google/zxing/aztec/encoder/State;->bitCount:I
if-gt v0, p1, :cond_2
const/4 p1, 0x1
return p1
:cond_2
const/4 p1, 0x0
return p1
.end method
.method public latchAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
.locals 4
iget v0, p0, Lcom/google/zxing/aztec/encoder/State;->bitCount:I
iget-object v1, p0, Lcom/google/zxing/aztec/encoder/State;->token:Lcom/google/zxing/aztec/encoder/Token;
iget v2, p0, Lcom/google/zxing/aztec/encoder/State;->mode:I
if-eq p1, v2, :cond_0
.line 80
sget-object v3, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->LATCH_TABLE:[[I
aget-object v2, v3, v2
aget v2, v2, p1
const v3, 0xffff
and-int/2addr v3, v2
shr-int/lit8 v2, v2, 0x10
.line 81
invoke-virtual {v1, v3, v2}, Lcom/google/zxing/aztec/encoder/Token;->add(II)Lcom/google/zxing/aztec/encoder/Token;
move-result-object v1
add-int/2addr v0, v2
:cond_0
const/4 v2, 0x2
if-ne p1, v2, :cond_1
const/4 v2, 0x4
goto :goto_0
:cond_1
const/4 v2, 0x5
.line 85
:goto_0
invoke-virtual {v1, p2, v2}, Lcom/google/zxing/aztec/encoder/Token;->add(II)Lcom/google/zxing/aztec/encoder/Token;
move-result-object p2
.line 86
new-instance v1, Lcom/google/zxing/aztec/encoder/State;
const/4 v3, 0x0
add-int/2addr v0, v2
invoke-direct {v1, p2, p1, v3, v0}, Lcom/google/zxing/aztec/encoder/State;-><init>(Lcom/google/zxing/aztec/encoder/Token;III)V
return-object v1
.end method
.method public shiftAndAppend(II)Lcom/google/zxing/aztec/encoder/State;
.locals 5
iget-object v0, p0, Lcom/google/zxing/aztec/encoder/State;->token:Lcom/google/zxing/aztec/encoder/Token;
iget v1, p0, Lcom/google/zxing/aztec/encoder/State;->mode:I
const/4 v2, 0x2
const/4 v3, 0x5
if-ne v1, v2, :cond_0
const/4 v2, 0x4
goto :goto_0
:cond_0
move v2, v3
.line 96
:goto_0
sget-object v4, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->SHIFT_TABLE:[[I
aget-object v1, v4, v1
aget p1, v1, p1
invoke-virtual {v0, p1, v2}, Lcom/google/zxing/aztec/encoder/Token;->add(II)Lcom/google/zxing/aztec/encoder/Token;
move-result-object p1
.line 97
invoke-virtual {p1, p2, v3}, Lcom/google/zxing/aztec/encoder/Token;->add(II)Lcom/google/zxing/aztec/encoder/Token;
move-result-object p1
.line 98
new-instance p2, Lcom/google/zxing/aztec/encoder/State;
iget v0, p0, Lcom/google/zxing/aztec/encoder/State;->mode:I
iget v1, p0, Lcom/google/zxing/aztec/encoder/State;->bitCount:I
add-int/2addr v1, v2
add-int/2addr v1, v3
const/4 v2, 0x0
invoke-direct {p2, p1, v0, v2, v1}, Lcom/google/zxing/aztec/encoder/State;-><init>(Lcom/google/zxing/aztec/encoder/Token;III)V
return-object p2
.end method
.method public toBitArray([B)Lcom/google/zxing/common/BitArray;
.locals 3
.line 151
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
.line 152
array-length v1, p1
invoke-virtual {p0, v1}, Lcom/google/zxing/aztec/encoder/State;->endBinaryShift(I)Lcom/google/zxing/aztec/encoder/State;
move-result-object v1
iget-object v1, v1, Lcom/google/zxing/aztec/encoder/State;->token:Lcom/google/zxing/aztec/encoder/Token;
:goto_0
if-eqz v1, :cond_0
.line 153
invoke-interface {v0, v1}, Ljava/util/Deque;->addFirst(Ljava/lang/Object;)V
.line 152
invoke-virtual {v1}, Lcom/google/zxing/aztec/encoder/Token;->getPrevious()Lcom/google/zxing/aztec/encoder/Token;
move-result-object v1
goto :goto_0
.line 155
:cond_0
new-instance v1, Lcom/google/zxing/common/BitArray;
invoke-direct {v1}, Lcom/google/zxing/common/BitArray;-><init>()V
.line 157
invoke-interface {v0}, Ljava/util/Deque;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_1
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_1
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/google/zxing/aztec/encoder/Token;
.line 158
invoke-virtual {v2, v1, p1}, Lcom/google/zxing/aztec/encoder/Token;->appendTo(Lcom/google/zxing/common/BitArray;[B)V
goto :goto_1
:cond_1
return-object v1
.end method
.method public toString()Ljava/lang/String;
.locals 3
.line 166
sget-object v0, Lcom/google/zxing/aztec/encoder/HighLevelEncoder;->MODE_NAMES:[Ljava/lang/String;
iget v1, p0, Lcom/google/zxing/aztec/encoder/State;->mode:I
aget-object v0, v0, v1
iget v1, p0, Lcom/google/zxing/aztec/encoder/State;->bitCount:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
iget v2, p0, Lcom/google/zxing/aztec/encoder/State;->binaryShiftByteCount:I
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
filled-new-array {v0, v1, v2}, [Ljava/lang/Object;
move-result-object v0
const-string v1, "%s bits=%d bytes=%d"
invoke-static {v1, v0}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,76 @@
.class public abstract Lcom/google/zxing/aztec/encoder/Token;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static final EMPTY:Lcom/google/zxing/aztec/encoder/Token;
# instance fields
.field public final previous:Lcom/google/zxing/aztec/encoder/Token;
# direct methods
.method static constructor <clinit>()V
.locals 3
.line 23
new-instance v0, Lcom/google/zxing/aztec/encoder/SimpleToken;
const/4 v1, 0x0
const/4 v2, 0x0
invoke-direct {v0, v1, v2, v2}, Lcom/google/zxing/aztec/encoder/SimpleToken;-><init>(Lcom/google/zxing/aztec/encoder/Token;II)V
sput-object v0, Lcom/google/zxing/aztec/encoder/Token;->EMPTY:Lcom/google/zxing/aztec/encoder/Token;
return-void
.end method
.method public constructor <init>(Lcom/google/zxing/aztec/encoder/Token;)V
.locals 0
.line 27
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lcom/google/zxing/aztec/encoder/Token;->previous:Lcom/google/zxing/aztec/encoder/Token;
return-void
.end method
# virtual methods
.method public final add(II)Lcom/google/zxing/aztec/encoder/Token;
.locals 1
.line 36
new-instance v0, Lcom/google/zxing/aztec/encoder/SimpleToken;
invoke-direct {v0, p0, p1, p2}, Lcom/google/zxing/aztec/encoder/SimpleToken;-><init>(Lcom/google/zxing/aztec/encoder/Token;II)V
return-object v0
.end method
.method public final addBinaryShift(II)Lcom/google/zxing/aztec/encoder/Token;
.locals 1
.line 41
new-instance v0, Lcom/google/zxing/aztec/encoder/BinaryShiftToken;
invoke-direct {v0, p0, p1, p2}, Lcom/google/zxing/aztec/encoder/BinaryShiftToken;-><init>(Lcom/google/zxing/aztec/encoder/Token;II)V
return-object v0
.end method
.method public abstract appendTo(Lcom/google/zxing/common/BitArray;[B)V
.end method
.method public final getPrevious()Lcom/google/zxing/aztec/encoder/Token;
.locals 1
iget-object v0, p0, Lcom/google/zxing/aztec/encoder/Token;->previous:Lcom/google/zxing/aztec/encoder/Token;
return-object v0
.end method

View File

@@ -0,0 +1,533 @@
.class public final Lcom/google/zxing/common/BitArray;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Cloneable;
# instance fields
.field public bits:[I
.field public size:I
# direct methods
.method public constructor <init>()V
.locals 1
.line 31
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
iput v0, p0, Lcom/google/zxing/common/BitArray;->size:I
const/4 v0, 0x1
new-array v0, v0, [I
iput-object v0, p0, Lcom/google/zxing/common/BitArray;->bits:[I
return-void
.end method
.method public constructor <init>([II)V
.locals 0
.line 42
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lcom/google/zxing/common/BitArray;->bits:[I
iput p2, p0, Lcom/google/zxing/common/BitArray;->size:I
return-void
.end method
.method public static makeArray(I)[I
.locals 0
add-int/lit8 p0, p0, 0x1f
.line 323
div-int/lit8 p0, p0, 0x20
new-array p0, p0, [I
return-object p0
.end method
# virtual methods
.method public appendBit(Z)V
.locals 4
iget v0, p0, Lcom/google/zxing/common/BitArray;->size:I
const/4 v1, 0x1
add-int/2addr v0, v1
.line 217
invoke-virtual {p0, v0}, Lcom/google/zxing/common/BitArray;->ensureCapacity(I)V
if-eqz p1, :cond_0
iget-object p1, p0, Lcom/google/zxing/common/BitArray;->bits:[I
iget v0, p0, Lcom/google/zxing/common/BitArray;->size:I
.line 219
div-int/lit8 v2, v0, 0x20
aget v3, p1, v2
and-int/lit8 v0, v0, 0x1f
shl-int v0, v1, v0
or-int/2addr v0, v3
aput v0, p1, v2
:cond_0
iget p1, p0, Lcom/google/zxing/common/BitArray;->size:I
add-int/2addr p1, v1
iput p1, p0, Lcom/google/zxing/common/BitArray;->size:I
return-void
.end method
.method public appendBitArray(Lcom/google/zxing/common/BitArray;)V
.locals 3
.line 243
iget v0, p1, Lcom/google/zxing/common/BitArray;->size:I
iget v1, p0, Lcom/google/zxing/common/BitArray;->size:I
add-int/2addr v1, v0
.line 244
invoke-virtual {p0, v1}, Lcom/google/zxing/common/BitArray;->ensureCapacity(I)V
const/4 v1, 0x0
:goto_0
if-ge v1, v0, :cond_0
.line 246
invoke-virtual {p1, v1}, Lcom/google/zxing/common/BitArray;->get(I)Z
move-result v2
invoke-virtual {p0, v2}, Lcom/google/zxing/common/BitArray;->appendBit(Z)V
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_0
return-void
.end method
.method public appendBits(II)V
.locals 2
if-ltz p2, :cond_2
const/16 v0, 0x20
if-gt p2, v0, :cond_2
iget v0, p0, Lcom/google/zxing/common/BitArray;->size:I
add-int/2addr v0, p2
.line 236
invoke-virtual {p0, v0}, Lcom/google/zxing/common/BitArray;->ensureCapacity(I)V
:goto_0
if-lez p2, :cond_1
add-int/lit8 v0, p2, -0x1
shr-int v0, p1, v0
const/4 v1, 0x1
and-int/2addr v0, v1
if-ne v0, v1, :cond_0
goto :goto_1
:cond_0
const/4 v1, 0x0
.line 238
:goto_1
invoke-virtual {p0, v1}, Lcom/google/zxing/common/BitArray;->appendBit(Z)V
add-int/lit8 p2, p2, -0x1
goto :goto_0
:cond_1
return-void
.line 234
:cond_2
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "Num bits must be between 0 and 32"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public clone()Lcom/google/zxing/common/BitArray;
.locals 3
.line 354
new-instance v0, Lcom/google/zxing/common/BitArray;
iget-object v1, p0, Lcom/google/zxing/common/BitArray;->bits:[I
invoke-virtual {v1}, [I->clone()Ljava/lang/Object;
move-result-object v1
check-cast v1, [I
iget v2, p0, Lcom/google/zxing/common/BitArray;->size:I
invoke-direct {v0, v1, v2}, Lcom/google/zxing/common/BitArray;-><init>([II)V
return-object v0
.end method
.method public bridge synthetic clone()Ljava/lang/Object;
.locals 1
.line 26
invoke-virtual {p0}, Lcom/google/zxing/common/BitArray;->clone()Lcom/google/zxing/common/BitArray;
move-result-object v0
return-object v0
.end method
.method public final ensureCapacity(I)V
.locals 3
iget-object v0, p0, Lcom/google/zxing/common/BitArray;->bits:[I
.line 56
array-length v0, v0
shl-int/lit8 v0, v0, 0x5
if-le p1, v0, :cond_0
.line 57
invoke-static {p1}, Lcom/google/zxing/common/BitArray;->makeArray(I)[I
move-result-object p1
iget-object v0, p0, Lcom/google/zxing/common/BitArray;->bits:[I
.line 58
array-length v1, v0
const/4 v2, 0x0
invoke-static {v0, v2, p1, v2, v1}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
iput-object p1, p0, Lcom/google/zxing/common/BitArray;->bits:[I
:cond_0
return-void
.end method
.method public equals(Ljava/lang/Object;)Z
.locals 3
.line 328
instance-of v0, p1, Lcom/google/zxing/common/BitArray;
const/4 v1, 0x0
if-nez v0, :cond_0
return v1
.line 331
:cond_0
check-cast p1, Lcom/google/zxing/common/BitArray;
iget v0, p0, Lcom/google/zxing/common/BitArray;->size:I
.line 332
iget v2, p1, Lcom/google/zxing/common/BitArray;->size:I
if-ne v0, v2, :cond_1
iget-object v0, p0, Lcom/google/zxing/common/BitArray;->bits:[I
iget-object p1, p1, Lcom/google/zxing/common/BitArray;->bits:[I
invoke-static {v0, p1}, Ljava/util/Arrays;->equals([I[I)Z
move-result p1
if-eqz p1, :cond_1
const/4 p1, 0x1
return p1
:cond_1
return v1
.end method
.method public get(I)Z
.locals 2
iget-object v0, p0, Lcom/google/zxing/common/BitArray;->bits:[I
.line 68
div-int/lit8 v1, p1, 0x20
aget v0, v0, v1
and-int/lit8 p1, p1, 0x1f
const/4 v1, 0x1
shl-int p1, v1, p1
and-int/2addr p1, v0
if-eqz p1, :cond_0
return v1
:cond_0
const/4 p1, 0x0
return p1
.end method
.method public getSize()I
.locals 1
iget v0, p0, Lcom/google/zxing/common/BitArray;->size:I
return v0
.end method
.method public getSizeInBytes()I
.locals 1
iget v0, p0, Lcom/google/zxing/common/BitArray;->size:I
add-int/lit8 v0, v0, 0x7
.line 52
div-int/lit8 v0, v0, 0x8
return v0
.end method
.method public hashCode()I
.locals 2
iget v0, p0, Lcom/google/zxing/common/BitArray;->size:I
mul-int/lit8 v0, v0, 0x1f
iget-object v1, p0, Lcom/google/zxing/common/BitArray;->bits:[I
.line 337
invoke-static {v1}, Ljava/util/Arrays;->hashCode([I)I
move-result v1
add-int/2addr v0, v1
return v0
.end method
.method public toBytes(I[BII)V
.locals 6
const/4 v0, 0x0
move v1, v0
:goto_0
if-ge v1, p4, :cond_2
move v2, v0
move v3, v2
:goto_1
const/16 v4, 0x8
if-ge v2, v4, :cond_1
.line 273
invoke-virtual {p0, p1}, Lcom/google/zxing/common/BitArray;->get(I)Z
move-result v4
if-eqz v4, :cond_0
rsub-int/lit8 v4, v2, 0x7
const/4 v5, 0x1
shl-int v4, v5, v4
or-int/2addr v3, v4
:cond_0
add-int/lit8 p1, p1, 0x1
add-int/lit8 v2, v2, 0x1
goto :goto_1
:cond_1
add-int v2, p3, v1
int-to-byte v3, v3
.line 278
aput-byte v3, p2, v2
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_2
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 3
.line 342
new-instance v0, Ljava/lang/StringBuilder;
iget v1, p0, Lcom/google/zxing/common/BitArray;->size:I
div-int/lit8 v2, v1, 0x8
add-int/2addr v1, v2
add-int/lit8 v1, v1, 0x1
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(I)V
const/4 v1, 0x0
:goto_0
iget v2, p0, Lcom/google/zxing/common/BitArray;->size:I
if-ge v1, v2, :cond_2
and-int/lit8 v2, v1, 0x7
if-nez v2, :cond_0
const/16 v2, 0x20
.line 345
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 347
:cond_0
invoke-virtual {p0, v1}, Lcom/google/zxing/common/BitArray;->get(I)Z
move-result v2
if-eqz v2, :cond_1
const/16 v2, 0x58
goto :goto_1
:cond_1
const/16 v2, 0x2e
:goto_1
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 v1, v1, 0x1
goto :goto_0
.line 349
:cond_2
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public xor(Lcom/google/zxing/common/BitArray;)V
.locals 4
iget v0, p0, Lcom/google/zxing/common/BitArray;->size:I
.line 251
iget v1, p1, Lcom/google/zxing/common/BitArray;->size:I
if-ne v0, v1, :cond_1
const/4 v0, 0x0
:goto_0
iget-object v1, p0, Lcom/google/zxing/common/BitArray;->bits:[I
.line 254
array-length v2, v1
if-ge v0, v2, :cond_0
.line 257
aget v2, v1, v0
iget-object v3, p1, Lcom/google/zxing/common/BitArray;->bits:[I
aget v3, v3, v0
xor-int/2addr v2, v3
aput v2, v1, v0
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_0
return-void
.line 252
:cond_1
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Sizes don\'t match"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method

View File

@@ -0,0 +1,516 @@
.class public final Lcom/google/zxing/common/BitMatrix;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Cloneable;
# instance fields
.field public final bits:[I
.field public final height:I
.field public final rowSize:I
.field public final width:I
# direct methods
.method public constructor <init>(I)V
.locals 0
.line 49
invoke-direct {p0, p1, p1}, Lcom/google/zxing/common/BitMatrix;-><init>(II)V
return-void
.end method
.method public constructor <init>(II)V
.locals 0
.line 58
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
if-lez p1, :cond_0
if-lez p2, :cond_0
iput p1, p0, Lcom/google/zxing/common/BitMatrix;->width:I
iput p2, p0, Lcom/google/zxing/common/BitMatrix;->height:I
add-int/lit8 p1, p1, 0x1f
.line 64
div-int/lit8 p1, p1, 0x20
iput p1, p0, Lcom/google/zxing/common/BitMatrix;->rowSize:I
mul-int/2addr p1, p2
.line 65
new-array p1, p1, [I
iput-object p1, p0, Lcom/google/zxing/common/BitMatrix;->bits:[I
return-void
.line 60
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "Both dimensions must be greater than 0"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public constructor <init>(III[I)V
.locals 0
.line 68
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput p1, p0, Lcom/google/zxing/common/BitMatrix;->width:I
iput p2, p0, Lcom/google/zxing/common/BitMatrix;->height:I
iput p3, p0, Lcom/google/zxing/common/BitMatrix;->rowSize:I
iput-object p4, p0, Lcom/google/zxing/common/BitMatrix;->bits:[I
return-void
.end method
# virtual methods
.method public final buildToString(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.locals 5
.line 466
new-instance v0, Ljava/lang/StringBuilder;
iget v1, p0, Lcom/google/zxing/common/BitMatrix;->height:I
iget v2, p0, Lcom/google/zxing/common/BitMatrix;->width:I
add-int/lit8 v2, v2, 0x1
mul-int/2addr v1, v2
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(I)V
const/4 v1, 0x0
move v2, v1
:goto_0
iget v3, p0, Lcom/google/zxing/common/BitMatrix;->height:I
if-ge v2, v3, :cond_2
move v3, v1
:goto_1
iget v4, p0, Lcom/google/zxing/common/BitMatrix;->width:I
if-ge v3, v4, :cond_1
.line 469
invoke-virtual {p0, v3, v2}, Lcom/google/zxing/common/BitMatrix;->get(II)Z
move-result v4
if-eqz v4, :cond_0
move-object v4, p1
goto :goto_2
:cond_0
move-object v4, p2
:goto_2
invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 v3, v3, 0x1
goto :goto_1
.line 471
:cond_1
invoke-virtual {v0, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 v2, v2, 0x1
goto :goto_0
.line 473
:cond_2
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public clear()V
.locals 4
iget-object v0, p0, Lcom/google/zxing/common/BitMatrix;->bits:[I
.line 217
array-length v0, v0
const/4 v1, 0x0
move v2, v1
:goto_0
if-ge v2, v0, :cond_0
iget-object v3, p0, Lcom/google/zxing/common/BitMatrix;->bits:[I
.line 219
aput v1, v3, v2
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_0
return-void
.end method
.method public clone()Lcom/google/zxing/common/BitMatrix;
.locals 5
.line 478
new-instance v0, Lcom/google/zxing/common/BitMatrix;
iget v1, p0, Lcom/google/zxing/common/BitMatrix;->width:I
iget v2, p0, Lcom/google/zxing/common/BitMatrix;->height:I
iget v3, p0, Lcom/google/zxing/common/BitMatrix;->rowSize:I
iget-object v4, p0, Lcom/google/zxing/common/BitMatrix;->bits:[I
invoke-virtual {v4}, [I->clone()Ljava/lang/Object;
move-result-object v4
check-cast v4, [I
invoke-direct {v0, v1, v2, v3, v4}, Lcom/google/zxing/common/BitMatrix;-><init>(III[I)V
return-object v0
.end method
.method public bridge synthetic clone()Ljava/lang/Object;
.locals 1
.line 36
invoke-virtual {p0}, Lcom/google/zxing/common/BitMatrix;->clone()Lcom/google/zxing/common/BitMatrix;
move-result-object v0
return-object v0
.end method
.method public equals(Ljava/lang/Object;)Z
.locals 3
.line 418
instance-of v0, p1, Lcom/google/zxing/common/BitMatrix;
const/4 v1, 0x0
if-nez v0, :cond_0
return v1
.line 421
:cond_0
check-cast p1, Lcom/google/zxing/common/BitMatrix;
iget v0, p0, Lcom/google/zxing/common/BitMatrix;->width:I
.line 422
iget v2, p1, Lcom/google/zxing/common/BitMatrix;->width:I
if-ne v0, v2, :cond_1
iget v0, p0, Lcom/google/zxing/common/BitMatrix;->height:I
iget v2, p1, Lcom/google/zxing/common/BitMatrix;->height:I
if-ne v0, v2, :cond_1
iget v0, p0, Lcom/google/zxing/common/BitMatrix;->rowSize:I
iget v2, p1, Lcom/google/zxing/common/BitMatrix;->rowSize:I
if-ne v0, v2, :cond_1
iget-object v0, p0, Lcom/google/zxing/common/BitMatrix;->bits:[I
iget-object p1, p1, Lcom/google/zxing/common/BitMatrix;->bits:[I
.line 423
invoke-static {v0, p1}, Ljava/util/Arrays;->equals([I[I)Z
move-result p1
if-eqz p1, :cond_1
const/4 p1, 0x1
return p1
:cond_1
return v1
.end method
.method public get(II)Z
.locals 1
iget v0, p0, Lcom/google/zxing/common/BitMatrix;->rowSize:I
mul-int/2addr p2, v0
.line 161
div-int/lit8 v0, p1, 0x20
add-int/2addr p2, v0
iget-object v0, p0, Lcom/google/zxing/common/BitMatrix;->bits:[I
.line 162
aget p2, v0, p2
and-int/lit8 p1, p1, 0x1f
ushr-int p1, p2, p1
const/4 p2, 0x1
and-int/2addr p1, p2
if-eqz p1, :cond_0
return p2
:cond_0
const/4 p1, 0x0
return p1
.end method
.method public getHeight()I
.locals 1
iget v0, p0, Lcom/google/zxing/common/BitMatrix;->height:I
return v0
.end method
.method public getWidth()I
.locals 1
iget v0, p0, Lcom/google/zxing/common/BitMatrix;->width:I
return v0
.end method
.method public hashCode()I
.locals 2
iget v0, p0, Lcom/google/zxing/common/BitMatrix;->width:I
mul-int/lit8 v1, v0, 0x1f
add-int/2addr v1, v0
mul-int/lit8 v1, v1, 0x1f
iget v0, p0, Lcom/google/zxing/common/BitMatrix;->height:I
add-int/2addr v1, v0
mul-int/lit8 v1, v1, 0x1f
iget v0, p0, Lcom/google/zxing/common/BitMatrix;->rowSize:I
add-int/2addr v1, v0
mul-int/lit8 v1, v1, 0x1f
iget-object v0, p0, Lcom/google/zxing/common/BitMatrix;->bits:[I
.line 432
invoke-static {v0}, Ljava/util/Arrays;->hashCode([I)I
move-result v0
add-int/2addr v1, v0
return v1
.end method
.method public set(II)V
.locals 3
iget v0, p0, Lcom/google/zxing/common/BitMatrix;->rowSize:I
mul-int/2addr p2, v0
.line 172
div-int/lit8 v0, p1, 0x20
add-int/2addr p2, v0
iget-object v0, p0, Lcom/google/zxing/common/BitMatrix;->bits:[I
.line 173
aget v1, v0, p2
and-int/lit8 p1, p1, 0x1f
const/4 v2, 0x1
shl-int p1, v2, p1
or-int/2addr p1, v1
aput p1, v0, p2
return-void
.end method
.method public setRegion(IIII)V
.locals 7
if-ltz p2, :cond_4
if-ltz p1, :cond_4
if-lez p4, :cond_3
if-lez p3, :cond_3
add-int/2addr p3, p1
add-int/2addr p4, p2
iget v0, p0, Lcom/google/zxing/common/BitMatrix;->height:I
if-gt p4, v0, :cond_2
iget v0, p0, Lcom/google/zxing/common/BitMatrix;->width:I
if-gt p3, v0, :cond_2
:goto_0
if-ge p2, p4, :cond_1
iget v0, p0, Lcom/google/zxing/common/BitMatrix;->rowSize:I
mul-int/2addr v0, p2
move v1, p1
:goto_1
if-ge v1, p3, :cond_0
iget-object v2, p0, Lcom/google/zxing/common/BitMatrix;->bits:[I
.line 246
div-int/lit8 v3, v1, 0x20
add-int/2addr v3, v0
aget v4, v2, v3
and-int/lit8 v5, v1, 0x1f
const/4 v6, 0x1
shl-int v5, v6, v5
or-int/2addr v4, v5
aput v4, v2, v3
add-int/lit8 v1, v1, 0x1
goto :goto_1
:cond_0
add-int/lit8 p2, p2, 0x1
goto :goto_0
:cond_1
return-void
.line 241
:cond_2
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "The region must fit inside the matrix"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 236
:cond_3
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "Height and width must be at least 1"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 233
:cond_4
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "Left and top must be nonnegative"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public toString()Ljava/lang/String;
.locals 2
const-string v0, "X "
const-string v1, " "
.line 441
invoke-virtual {p0, v0, v1}, Lcom/google/zxing/common/BitMatrix;->toString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public toString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.locals 1
const-string v0, "\n"
.line 450
invoke-virtual {p0, p1, p2, v0}, Lcom/google/zxing/common/BitMatrix;->buildToString(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
return-object p1
.end method

View File

@@ -0,0 +1,938 @@
.class public final enum Lcom/google/zxing/common/CharacterSetECI;
.super Ljava/lang/Enum;
.source "SourceFile"
# static fields
.field private static final synthetic $VALUES:[Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ASCII:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum Big5:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum Cp1250:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum Cp1251:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum Cp1252:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum Cp1256:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum Cp437:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum EUC_KR:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum GB18030:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_1:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_10:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_11:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_13:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_14:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_15:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_16:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_2:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_3:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_4:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_5:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_6:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_7:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_8:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum ISO8859_9:Lcom/google/zxing/common/CharacterSetECI;
.field private static final NAME_TO_ECI:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/String;",
"Lcom/google/zxing/common/CharacterSetECI;",
">;"
}
.end annotation
.end field
.field public static final enum SJIS:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum UTF8:Lcom/google/zxing/common/CharacterSetECI;
.field public static final enum UnicodeBigUnmarked:Lcom/google/zxing/common/CharacterSetECI;
.field private static final VALUE_TO_ECI:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/Integer;",
"Lcom/google/zxing/common/CharacterSetECI;",
">;"
}
.end annotation
.end field
# instance fields
.field private final otherEncodingNames:[Ljava/lang/String;
.field private final values:[I
# direct methods
.method static constructor <clinit>()V
.locals 33
.line 33
new-instance v1, Lcom/google/zxing/common/CharacterSetECI;
move-object v0, v1
const/4 v15, 0x0
const/4 v3, 0x2
filled-new-array {v15, v3}, [I
move-result-object v2
new-array v4, v15, [Ljava/lang/String;
const-string v5, "Cp437"
invoke-direct {v1, v5, v15, v2, v4}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;I[I[Ljava/lang/String;)V
sput-object v1, Lcom/google/zxing/common/CharacterSetECI;->Cp437:Lcom/google/zxing/common/CharacterSetECI;
.line 34
new-instance v2, Lcom/google/zxing/common/CharacterSetECI;
move-object v1, v2
const/4 v4, 0x1
const/4 v5, 0x3
filled-new-array {v4, v5}, [I
move-result-object v6
const-string v7, "ISO-8859-1"
filled-new-array {v7}, [Ljava/lang/String;
move-result-object v7
const-string v8, "ISO8859_1"
invoke-direct {v2, v8, v4, v6, v7}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;I[I[Ljava/lang/String;)V
sput-object v2, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_1:Lcom/google/zxing/common/CharacterSetECI;
.line 35
new-instance v4, Lcom/google/zxing/common/CharacterSetECI;
move-object v2, v4
const-string v6, "ISO-8859-2"
filled-new-array {v6}, [Ljava/lang/String;
move-result-object v6
const-string v7, "ISO8859_2"
const/4 v8, 0x4
invoke-direct {v4, v7, v3, v8, v6}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v4, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_2:Lcom/google/zxing/common/CharacterSetECI;
.line 36
new-instance v4, Lcom/google/zxing/common/CharacterSetECI;
move-object v3, v4
const-string v6, "ISO-8859-3"
filled-new-array {v6}, [Ljava/lang/String;
move-result-object v6
const-string v7, "ISO8859_3"
const/4 v9, 0x5
invoke-direct {v4, v7, v5, v9, v6}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v4, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_3:Lcom/google/zxing/common/CharacterSetECI;
.line 37
new-instance v5, Lcom/google/zxing/common/CharacterSetECI;
move-object v4, v5
const-string v6, "ISO-8859-4"
filled-new-array {v6}, [Ljava/lang/String;
move-result-object v6
const-string v7, "ISO8859_4"
const/4 v10, 0x6
invoke-direct {v5, v7, v8, v10, v6}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v5, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_4:Lcom/google/zxing/common/CharacterSetECI;
.line 38
new-instance v6, Lcom/google/zxing/common/CharacterSetECI;
move-object v5, v6
const-string v7, "ISO-8859-5"
filled-new-array {v7}, [Ljava/lang/String;
move-result-object v7
const-string v8, "ISO8859_5"
const/4 v11, 0x7
invoke-direct {v6, v8, v9, v11, v7}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v6, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_5:Lcom/google/zxing/common/CharacterSetECI;
.line 39
new-instance v7, Lcom/google/zxing/common/CharacterSetECI;
move-object v6, v7
const-string v8, "ISO-8859-6"
filled-new-array {v8}, [Ljava/lang/String;
move-result-object v8
const-string v9, "ISO8859_6"
const/16 v12, 0x8
invoke-direct {v7, v9, v10, v12, v8}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v7, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_6:Lcom/google/zxing/common/CharacterSetECI;
.line 40
new-instance v8, Lcom/google/zxing/common/CharacterSetECI;
move-object v7, v8
const-string v9, "ISO-8859-7"
filled-new-array {v9}, [Ljava/lang/String;
move-result-object v9
const-string v10, "ISO8859_7"
const/16 v13, 0x9
invoke-direct {v8, v10, v11, v13, v9}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v8, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_7:Lcom/google/zxing/common/CharacterSetECI;
.line 41
new-instance v9, Lcom/google/zxing/common/CharacterSetECI;
move-object v8, v9
const-string v10, "ISO-8859-8"
filled-new-array {v10}, [Ljava/lang/String;
move-result-object v10
const-string v11, "ISO8859_8"
const/16 v14, 0xa
invoke-direct {v9, v11, v12, v14, v10}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v9, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_8:Lcom/google/zxing/common/CharacterSetECI;
.line 42
new-instance v10, Lcom/google/zxing/common/CharacterSetECI;
move-object v9, v10
const-string v11, "ISO-8859-9"
filled-new-array {v11}, [Ljava/lang/String;
move-result-object v11
const-string v12, "ISO8859_9"
const/16 v15, 0xb
invoke-direct {v10, v12, v13, v15, v11}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v10, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_9:Lcom/google/zxing/common/CharacterSetECI;
.line 43
new-instance v11, Lcom/google/zxing/common/CharacterSetECI;
move-object v10, v11
const-string v12, "ISO-8859-10"
filled-new-array {v12}, [Ljava/lang/String;
move-result-object v12
const-string v13, "ISO8859_10"
const/16 v15, 0xc
invoke-direct {v11, v13, v14, v15, v12}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v11, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_10:Lcom/google/zxing/common/CharacterSetECI;
.line 44
new-instance v12, Lcom/google/zxing/common/CharacterSetECI;
move-object v11, v12
const-string v13, "ISO-8859-11"
filled-new-array {v13}, [Ljava/lang/String;
move-result-object v13
const-string v14, "ISO8859_11"
const/16 v15, 0xd
move-object/from16 v27, v0
const/16 v0, 0xb
invoke-direct {v12, v14, v0, v15, v13}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v12, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_11:Lcom/google/zxing/common/CharacterSetECI;
.line 45
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object v12, v0
const-string v13, "ISO-8859-13"
filled-new-array {v13}, [Ljava/lang/String;
move-result-object v13
const-string v14, "ISO8859_13"
const/16 v15, 0xf
move-object/from16 v28, v1
const/16 v1, 0xc
invoke-direct {v0, v14, v1, v15, v13}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_13:Lcom/google/zxing/common/CharacterSetECI;
.line 46
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object v13, v0
const-string v1, "ISO-8859-14"
filled-new-array {v1}, [Ljava/lang/String;
move-result-object v1
const-string v14, "ISO8859_14"
move-object/from16 v29, v2
const/16 v2, 0x10
const/16 v15, 0xd
invoke-direct {v0, v14, v15, v2, v1}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_14:Lcom/google/zxing/common/CharacterSetECI;
.line 47
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object v14, v0
const-string v1, "ISO-8859-15"
filled-new-array {v1}, [Ljava/lang/String;
move-result-object v1
const-string v15, "ISO8859_15"
const/16 v2, 0xe
move-object/from16 v30, v3
const/16 v3, 0x11
invoke-direct {v0, v15, v2, v3, v1}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_15:Lcom/google/zxing/common/CharacterSetECI;
.line 48
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
const/16 v1, 0xf
const/16 v31, 0x0
move-object v15, v0
const-string v2, "ISO-8859-16"
filled-new-array {v2}, [Ljava/lang/String;
move-result-object v2
const-string v3, "ISO8859_16"
move-object/from16 v32, v4
const/16 v4, 0x12
invoke-direct {v0, v3, v1, v4, v2}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->ISO8859_16:Lcom/google/zxing/common/CharacterSetECI;
.line 49
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object/from16 v16, v0
const-string v1, "Shift_JIS"
filled-new-array {v1}, [Ljava/lang/String;
move-result-object v1
const-string v2, "SJIS"
const/16 v3, 0x14
const/16 v4, 0x10
invoke-direct {v0, v2, v4, v3, v1}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->SJIS:Lcom/google/zxing/common/CharacterSetECI;
.line 50
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object/from16 v17, v0
const-string v1, "windows-1250"
filled-new-array {v1}, [Ljava/lang/String;
move-result-object v1
const-string v2, "Cp1250"
const/16 v4, 0x15
const/16 v3, 0x11
invoke-direct {v0, v2, v3, v4, v1}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->Cp1250:Lcom/google/zxing/common/CharacterSetECI;
.line 51
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object/from16 v18, v0
const-string v1, "windows-1251"
filled-new-array {v1}, [Ljava/lang/String;
move-result-object v1
const-string v2, "Cp1251"
const/16 v3, 0x16
const/16 v4, 0x12
invoke-direct {v0, v2, v4, v3, v1}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->Cp1251:Lcom/google/zxing/common/CharacterSetECI;
.line 52
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object/from16 v19, v0
const-string v1, "windows-1252"
filled-new-array {v1}, [Ljava/lang/String;
move-result-object v1
const-string v2, "Cp1252"
const/16 v4, 0x13
const/16 v3, 0x17
invoke-direct {v0, v2, v4, v3, v1}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->Cp1252:Lcom/google/zxing/common/CharacterSetECI;
.line 53
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object/from16 v20, v0
const-string v1, "windows-1256"
filled-new-array {v1}, [Ljava/lang/String;
move-result-object v1
const-string v2, "Cp1256"
const/16 v4, 0x18
const/16 v3, 0x14
invoke-direct {v0, v2, v3, v4, v1}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->Cp1256:Lcom/google/zxing/common/CharacterSetECI;
.line 54
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object/from16 v21, v0
const-string v1, "UTF-16BE"
const-string v2, "UnicodeBig"
filled-new-array {v1, v2}, [Ljava/lang/String;
move-result-object v1
const-string v2, "UnicodeBigUnmarked"
const/16 v3, 0x19
const/16 v4, 0x15
invoke-direct {v0, v2, v4, v3, v1}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->UnicodeBigUnmarked:Lcom/google/zxing/common/CharacterSetECI;
.line 55
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object/from16 v22, v0
const-string v1, "UTF-8"
filled-new-array {v1}, [Ljava/lang/String;
move-result-object v1
const-string v2, "UTF8"
const/16 v3, 0x1a
const/16 v4, 0x16
invoke-direct {v0, v2, v4, v3, v1}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->UTF8:Lcom/google/zxing/common/CharacterSetECI;
.line 56
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object/from16 v23, v0
const/16 v1, 0x1b
const/16 v2, 0xaa
filled-new-array {v1, v2}, [I
move-result-object v1
const-string v2, "US-ASCII"
filled-new-array {v2}, [Ljava/lang/String;
move-result-object v2
const-string v3, "ASCII"
const/16 v4, 0x17
invoke-direct {v0, v3, v4, v1, v2}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;I[I[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->ASCII:Lcom/google/zxing/common/CharacterSetECI;
.line 57
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object/from16 v24, v0
const/16 v1, 0x18
const/16 v2, 0x1c
const-string v3, "Big5"
invoke-direct {v0, v3, v1, v2}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->Big5:Lcom/google/zxing/common/CharacterSetECI;
.line 58
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object/from16 v25, v0
const-string v1, "EUC_CN"
const-string v2, "GBK"
const-string v3, "GB2312"
filled-new-array {v3, v1, v2}, [Ljava/lang/String;
move-result-object v1
const-string v2, "GB18030"
const/16 v3, 0x19
const/16 v4, 0x1d
invoke-direct {v0, v2, v3, v4, v1}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->GB18030:Lcom/google/zxing/common/CharacterSetECI;
.line 59
new-instance v0, Lcom/google/zxing/common/CharacterSetECI;
move-object/from16 v26, v0
const-string v1, "EUC-KR"
filled-new-array {v1}, [Ljava/lang/String;
move-result-object v1
const-string v2, "EUC_KR"
const/16 v3, 0x1a
const/16 v4, 0x1e
invoke-direct {v0, v2, v3, v4, v1}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;II[Ljava/lang/String;)V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->EUC_KR:Lcom/google/zxing/common/CharacterSetECI;
move-object/from16 v0, v27
move-object/from16 v1, v28
move-object/from16 v2, v29
move-object/from16 v3, v30
move-object/from16 v4, v32
filled-new-array/range {v0 .. v26}, [Lcom/google/zxing/common/CharacterSetECI;
move-result-object v0
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->$VALUES:[Lcom/google/zxing/common/CharacterSetECI;
.line 61
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->VALUE_TO_ECI:Ljava/util/Map;
.line 62
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
sput-object v0, Lcom/google/zxing/common/CharacterSetECI;->NAME_TO_ECI:Ljava/util/Map;
.line 64
invoke-static {}, Lcom/google/zxing/common/CharacterSetECI;->values()[Lcom/google/zxing/common/CharacterSetECI;
move-result-object v0
array-length v1, v0
move/from16 v15, v31
:goto_0
if-ge v15, v1, :cond_2
aget-object v2, v0, v15
.line 65
iget-object v3, v2, Lcom/google/zxing/common/CharacterSetECI;->values:[I
array-length v4, v3
move/from16 v5, v31
:goto_1
if-ge v5, v4, :cond_0
aget v6, v3, v5
sget-object v7, Lcom/google/zxing/common/CharacterSetECI;->VALUE_TO_ECI:Ljava/util/Map;
.line 66
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v6
invoke-interface {v7, v6, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
add-int/lit8 v5, v5, 0x1
goto :goto_1
:cond_0
sget-object v3, Lcom/google/zxing/common/CharacterSetECI;->NAME_TO_ECI:Ljava/util/Map;
.line 68
invoke-virtual {v2}, Ljava/lang/Enum;->name()Ljava/lang/String;
move-result-object v4
invoke-interface {v3, v4, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 69
iget-object v3, v2, Lcom/google/zxing/common/CharacterSetECI;->otherEncodingNames:[Ljava/lang/String;
array-length v4, v3
move/from16 v5, v31
:goto_2
if-ge v5, v4, :cond_1
aget-object v6, v3, v5
sget-object v7, Lcom/google/zxing/common/CharacterSetECI;->NAME_TO_ECI:Ljava/util/Map;
.line 70
invoke-interface {v7, v6, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
add-int/lit8 v5, v5, 0x1
goto :goto_2
:cond_1
add-int/lit8 v15, v15, 0x1
goto :goto_0
:cond_2
return-void
.end method
.method private constructor <init>(Ljava/lang/String;II)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(I)V"
}
.end annotation
filled-new-array {p3}, [I
move-result-object p3
const/4 v0, 0x0
new-array v0, v0, [Ljava/lang/String;
.line 79
invoke-direct {p0, p1, p2, p3, v0}, Lcom/google/zxing/common/CharacterSetECI;-><init>(Ljava/lang/String;I[I[Ljava/lang/String;)V
return-void
.end method
.method private varargs constructor <init>(Ljava/lang/String;II[Ljava/lang/String;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(I[",
"Ljava/lang/String;",
")V"
}
.end annotation
.line 82
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
filled-new-array {p3}, [I
move-result-object p1
iput-object p1, p0, Lcom/google/zxing/common/CharacterSetECI;->values:[I
iput-object p4, p0, Lcom/google/zxing/common/CharacterSetECI;->otherEncodingNames:[Ljava/lang/String;
return-void
.end method
.method private varargs constructor <init>(Ljava/lang/String;I[I[Ljava/lang/String;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"([I[",
"Ljava/lang/String;",
")V"
}
.end annotation
.line 87
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
iput-object p3, p0, Lcom/google/zxing/common/CharacterSetECI;->values:[I
iput-object p4, p0, Lcom/google/zxing/common/CharacterSetECI;->otherEncodingNames:[Ljava/lang/String;
return-void
.end method
.method public static getCharacterSetECIByName(Ljava/lang/String;)Lcom/google/zxing/common/CharacterSetECI;
.locals 1
sget-object v0, Lcom/google/zxing/common/CharacterSetECI;->NAME_TO_ECI:Ljava/util/Map;
.line 115
invoke-interface {v0, p0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Lcom/google/zxing/common/CharacterSetECI;
return-object p0
.end method
.method public static getCharacterSetECIByValue(I)Lcom/google/zxing/common/CharacterSetECI;
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Lcom/google/zxing/FormatException;
}
.end annotation
if-ltz p0, :cond_0
const/16 v0, 0x384
if-ge p0, v0, :cond_0
sget-object v0, Lcom/google/zxing/common/CharacterSetECI;->VALUE_TO_ECI:Ljava/util/Map;
.line 106
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p0
invoke-interface {v0, p0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Lcom/google/zxing/common/CharacterSetECI;
return-object p0
.line 104
:cond_0
invoke-static {}, Lcom/google/zxing/FormatException;->getFormatInstance()Lcom/google/zxing/FormatException;
move-result-object p0
throw p0
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/google/zxing/common/CharacterSetECI;
.locals 1
const-class v0, Lcom/google/zxing/common/CharacterSetECI;
.line 30
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/google/zxing/common/CharacterSetECI;
return-object p0
.end method
.method public static values()[Lcom/google/zxing/common/CharacterSetECI;
.locals 1
sget-object v0, Lcom/google/zxing/common/CharacterSetECI;->$VALUES:[Lcom/google/zxing/common/CharacterSetECI;
.line 30
invoke-virtual {v0}, [Lcom/google/zxing/common/CharacterSetECI;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/google/zxing/common/CharacterSetECI;
return-object v0
.end method
# virtual methods
.method public getValue()I
.locals 2
iget-object v0, p0, Lcom/google/zxing/common/CharacterSetECI;->values:[I
const/4 v1, 0x0
.line 93
aget v0, v0, v1
return v0
.end method

View File

@@ -0,0 +1,419 @@
.class public final Lcom/google/zxing/common/reedsolomon/GenericGF;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static final AZTEC_DATA_10:Lcom/google/zxing/common/reedsolomon/GenericGF;
.field public static final AZTEC_DATA_12:Lcom/google/zxing/common/reedsolomon/GenericGF;
.field public static final AZTEC_DATA_6:Lcom/google/zxing/common/reedsolomon/GenericGF;
.field public static final AZTEC_DATA_8:Lcom/google/zxing/common/reedsolomon/GenericGF;
.field public static final AZTEC_PARAM:Lcom/google/zxing/common/reedsolomon/GenericGF;
.field public static final DATA_MATRIX_FIELD_256:Lcom/google/zxing/common/reedsolomon/GenericGF;
.field public static final MAXICODE_FIELD_64:Lcom/google/zxing/common/reedsolomon/GenericGF;
.field public static final QR_CODE_FIELD_256:Lcom/google/zxing/common/reedsolomon/GenericGF;
# instance fields
.field public final expTable:[I
.field public final generatorBase:I
.field public final logTable:[I
.field public final one:Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
.field public final primitive:I
.field public final size:I
.field public final zero:Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
# direct methods
.method static constructor <clinit>()V
.locals 6
.line 32
new-instance v0, Lcom/google/zxing/common/reedsolomon/GenericGF;
const/16 v1, 0x1069
const/16 v2, 0x1000
const/4 v3, 0x1
invoke-direct {v0, v1, v2, v3}, Lcom/google/zxing/common/reedsolomon/GenericGF;-><init>(III)V
sput-object v0, Lcom/google/zxing/common/reedsolomon/GenericGF;->AZTEC_DATA_12:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 33
new-instance v0, Lcom/google/zxing/common/reedsolomon/GenericGF;
const/16 v1, 0x409
const/16 v2, 0x400
invoke-direct {v0, v1, v2, v3}, Lcom/google/zxing/common/reedsolomon/GenericGF;-><init>(III)V
sput-object v0, Lcom/google/zxing/common/reedsolomon/GenericGF;->AZTEC_DATA_10:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 34
new-instance v0, Lcom/google/zxing/common/reedsolomon/GenericGF;
const/16 v1, 0x43
const/16 v2, 0x40
invoke-direct {v0, v1, v2, v3}, Lcom/google/zxing/common/reedsolomon/GenericGF;-><init>(III)V
sput-object v0, Lcom/google/zxing/common/reedsolomon/GenericGF;->AZTEC_DATA_6:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 35
new-instance v1, Lcom/google/zxing/common/reedsolomon/GenericGF;
const/16 v2, 0x13
const/16 v4, 0x10
invoke-direct {v1, v2, v4, v3}, Lcom/google/zxing/common/reedsolomon/GenericGF;-><init>(III)V
sput-object v1, Lcom/google/zxing/common/reedsolomon/GenericGF;->AZTEC_PARAM:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 36
new-instance v1, Lcom/google/zxing/common/reedsolomon/GenericGF;
const/4 v2, 0x0
const/16 v4, 0x11d
const/16 v5, 0x100
invoke-direct {v1, v4, v5, v2}, Lcom/google/zxing/common/reedsolomon/GenericGF;-><init>(III)V
sput-object v1, Lcom/google/zxing/common/reedsolomon/GenericGF;->QR_CODE_FIELD_256:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 37
new-instance v1, Lcom/google/zxing/common/reedsolomon/GenericGF;
const/16 v2, 0x12d
invoke-direct {v1, v2, v5, v3}, Lcom/google/zxing/common/reedsolomon/GenericGF;-><init>(III)V
sput-object v1, Lcom/google/zxing/common/reedsolomon/GenericGF;->DATA_MATRIX_FIELD_256:Lcom/google/zxing/common/reedsolomon/GenericGF;
sput-object v1, Lcom/google/zxing/common/reedsolomon/GenericGF;->AZTEC_DATA_8:Lcom/google/zxing/common/reedsolomon/GenericGF;
sput-object v0, Lcom/google/zxing/common/reedsolomon/GenericGF;->MAXICODE_FIELD_64:Lcom/google/zxing/common/reedsolomon/GenericGF;
return-void
.end method
.method public constructor <init>(III)V
.locals 4
.line 60
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput p1, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->primitive:I
iput p2, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->size:I
iput p3, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->generatorBase:I
.line 65
new-array p3, p2, [I
iput-object p3, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->expTable:[I
.line 66
new-array p3, p2, [I
iput-object p3, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->logTable:[I
const/4 p3, 0x1
const/4 v0, 0x0
move v2, p3
move v1, v0
:goto_0
if-ge v1, p2, :cond_1
iget-object v3, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->expTable:[I
.line 69
aput v2, v3, v1
shl-int/2addr v2, p3
if-lt v2, p2, :cond_0
xor-int/2addr v2, p1
add-int/lit8 v3, p2, -0x1
and-int/2addr v2, v3
:cond_0
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_1
move p1, v0
:goto_1
add-int/lit8 v1, p2, -0x1
if-ge p1, v1, :cond_2
iget-object v1, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->logTable:[I
iget-object v2, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->expTable:[I
.line 77
aget v2, v2, p1
aput p1, v1, v2
add-int/lit8 p1, p1, 0x1
goto :goto_1
.line 80
:cond_2
new-instance p1, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
filled-new-array {v0}, [I
move-result-object p2
invoke-direct {p1, p0, p2}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;-><init>(Lcom/google/zxing/common/reedsolomon/GenericGF;[I)V
iput-object p1, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->zero:Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
.line 81
new-instance p1, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
filled-new-array {p3}, [I
move-result-object p2
invoke-direct {p1, p0, p2}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;-><init>(Lcom/google/zxing/common/reedsolomon/GenericGF;[I)V
iput-object p1, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->one:Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
return-void
.end method
.method public static addOrSubtract(II)I
.locals 0
xor-int/2addr p0, p1
return p0
.end method
# virtual methods
.method public buildMonomial(II)Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
.locals 1
if-ltz p1, :cond_1
if-nez p2, :cond_0
iget-object p1, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->zero:Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
return-object p1
:cond_0
add-int/lit8 p1, p1, 0x1
.line 102
new-array p1, p1, [I
const/4 v0, 0x0
.line 103
aput p2, p1, v0
.line 104
new-instance p2, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
invoke-direct {p2, p0, p1}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;-><init>(Lcom/google/zxing/common/reedsolomon/GenericGF;[I)V
return-object p2
.line 97
:cond_1
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-direct {p1}, Ljava/lang/IllegalArgumentException;-><init>()V
throw p1
.end method
.method public exp(I)I
.locals 1
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->expTable:[I
.line 120
aget p1, v0, p1
return p1
.end method
.method public getGeneratorBase()I
.locals 1
iget v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->generatorBase:I
return v0
.end method
.method public getZero()Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
.locals 1
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->zero:Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
return-object v0
.end method
.method public inverse(I)I
.locals 3
if-eqz p1, :cond_0
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->expTable:[I
iget v1, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->size:I
iget-object v2, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->logTable:[I
.line 140
aget p1, v2, p1
sub-int/2addr v1, p1
add-int/lit8 v1, v1, -0x1
aget p1, v0, v1
return p1
.line 138
:cond_0
new-instance p1, Ljava/lang/ArithmeticException;
invoke-direct {p1}, Ljava/lang/ArithmeticException;-><init>()V
throw p1
.end method
.method public log(I)I
.locals 1
if-eqz p1, :cond_0
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->logTable:[I
.line 130
aget p1, v0, p1
return p1
.line 128
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-direct {p1}, Ljava/lang/IllegalArgumentException;-><init>()V
throw p1
.end method
.method public multiply(II)I
.locals 2
if-eqz p1, :cond_1
if-nez p2, :cond_0
goto :goto_0
:cond_0
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->expTable:[I
iget-object v1, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->logTable:[I
.line 150
aget p1, v1, p1
aget p2, v1, p2
add-int/2addr p1, p2
iget p2, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->size:I
add-int/lit8 p2, p2, -0x1
rem-int/2addr p1, p2
aget p1, v0, p1
return p1
:cond_1
:goto_0
const/4 p1, 0x0
return p1
.end method
.method public toString()Ljava/lang/String;
.locals 2
.line 163
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "GF(0x"
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget v1, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->primitive:I
invoke-static {v1}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/16 v1, 0x2c
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/google/zxing/common/reedsolomon/GenericGF;->size:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const/16 v1, 0x29
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,738 @@
.class public final Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field public final coefficients:[I
.field public final field:Lcom/google/zxing/common/reedsolomon/GenericGF;
# direct methods
.method public constructor <init>(Lcom/google/zxing/common/reedsolomon/GenericGF;[I)V
.locals 3
.line 42
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 43
array-length v0, p2
if-eqz v0, :cond_3
iput-object p1, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 47
array-length p1, p2
const/4 v0, 0x1
if-le p1, v0, :cond_2
const/4 v1, 0x0
.line 48
aget v2, p2, v1
if-nez v2, :cond_2
:goto_0
if-ge v0, p1, :cond_0
.line 51
aget v2, p2, v0
if-nez v2, :cond_0
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_0
if-ne v0, p1, :cond_1
filled-new-array {v1}, [I
move-result-object p1
iput-object p1, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->coefficients:[I
return-void
:cond_1
sub-int/2addr p1, v0
.line 57
new-array p1, p1, [I
iput-object p1, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->coefficients:[I
array-length v2, p1
.line 58
invoke-static {p2, v0, p1, v1, v2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-void
:cond_2
iput-object p2, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->coefficients:[I
return-void
.line 44
:cond_3
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-direct {p1}, Ljava/lang/IllegalArgumentException;-><init>()V
throw p1
.end method
# virtual methods
.method public addOrSubtract(Lcom/google/zxing/common/reedsolomon/GenericGFPoly;)Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
.locals 7
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 119
iget-object v1, p1, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
invoke-virtual {v0, v1}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_4
.line 122
invoke-virtual {p0}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->isZero()Z
move-result v0
if-eqz v0, :cond_0
return-object p1
.line 125
:cond_0
invoke-virtual {p1}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->isZero()Z
move-result v0
if-eqz v0, :cond_1
return-object p0
:cond_1
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->coefficients:[I
.line 130
iget-object p1, p1, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->coefficients:[I
.line 131
array-length v1, v0
array-length v2, p1
if-le v1, v2, :cond_2
goto :goto_0
:cond_2
move-object v6, v0
move-object v0, p1
move-object p1, v6
.line 136
:goto_0
array-length v1, v0
new-array v1, v1, [I
.line 137
array-length v2, v0
array-length v3, p1
sub-int/2addr v2, v3
const/4 v3, 0x0
.line 139
invoke-static {v0, v3, v1, v3, v2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
move v3, v2
.line 141
:goto_1
array-length v4, v0
if-ge v3, v4, :cond_3
sub-int v4, v3, v2
.line 142
aget v4, p1, v4
aget v5, v0, v3
invoke-static {v4, v5}, Lcom/google/zxing/common/reedsolomon/GenericGF;->addOrSubtract(II)I
move-result v4
aput v4, v1, v3
add-int/lit8 v3, v3, 0x1
goto :goto_1
.line 145
:cond_3
new-instance p1, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
invoke-direct {p1, v0, v1}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;-><init>(Lcom/google/zxing/common/reedsolomon/GenericGF;[I)V
return-object p1
.line 120
:cond_4
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "GenericGFPolys do not have same GenericGF field"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public divide(Lcom/google/zxing/common/reedsolomon/GenericGFPoly;)[Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
.locals 7
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 201
iget-object v1, p1, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
invoke-virtual {v0, v1}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_2
.line 204
invoke-virtual {p1}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->isZero()Z
move-result v0
if-nez v0, :cond_1
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 208
invoke-virtual {v0}, Lcom/google/zxing/common/reedsolomon/GenericGF;->getZero()Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
move-result-object v0
.line 211
invoke-virtual {p1}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->getDegree()I
move-result v1
invoke-virtual {p1, v1}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->getCoefficient(I)I
move-result v1
iget-object v2, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 212
invoke-virtual {v2, v1}, Lcom/google/zxing/common/reedsolomon/GenericGF;->inverse(I)I
move-result v1
move-object v2, p0
.line 214
:goto_0
invoke-virtual {v2}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->getDegree()I
move-result v3
invoke-virtual {p1}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->getDegree()I
move-result v4
if-lt v3, v4, :cond_0
invoke-virtual {v2}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->isZero()Z
move-result v3
if-nez v3, :cond_0
.line 215
invoke-virtual {v2}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->getDegree()I
move-result v3
invoke-virtual {p1}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->getDegree()I
move-result v4
sub-int/2addr v3, v4
iget-object v4, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 216
invoke-virtual {v2}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->getDegree()I
move-result v5
invoke-virtual {v2, v5}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->getCoefficient(I)I
move-result v5
invoke-virtual {v4, v5, v1}, Lcom/google/zxing/common/reedsolomon/GenericGF;->multiply(II)I
move-result v4
.line 217
invoke-virtual {p1, v3, v4}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->multiplyByMonomial(II)Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
move-result-object v5
iget-object v6, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 218
invoke-virtual {v6, v3, v4}, Lcom/google/zxing/common/reedsolomon/GenericGF;->buildMonomial(II)Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
move-result-object v3
.line 219
invoke-virtual {v0, v3}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->addOrSubtract(Lcom/google/zxing/common/reedsolomon/GenericGFPoly;)Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
move-result-object v0
.line 220
invoke-virtual {v2, v5}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->addOrSubtract(Lcom/google/zxing/common/reedsolomon/GenericGFPoly;)Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
move-result-object v2
goto :goto_0
:cond_0
filled-new-array {v0, v2}, [Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
move-result-object p1
return-object p1
.line 205
:cond_1
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Divide by 0"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 202
:cond_2
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "GenericGFPolys do not have same GenericGF field"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public getCoefficient(I)I
.locals 2
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->coefficients:[I
.line 91
array-length v1, v0
add-int/lit8 v1, v1, -0x1
sub-int/2addr v1, p1
aget p1, v0, v1
return p1
.end method
.method public getCoefficients()[I
.locals 1
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->coefficients:[I
return-object v0
.end method
.method public getDegree()I
.locals 1
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->coefficients:[I
.line 77
array-length v0, v0
add-int/lit8 v0, v0, -0x1
return v0
.end method
.method public isZero()Z
.locals 2
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->coefficients:[I
const/4 v1, 0x0
.line 84
aget v0, v0, v1
if-nez v0, :cond_0
const/4 v0, 0x1
return v0
:cond_0
return v1
.end method
.method public multiply(Lcom/google/zxing/common/reedsolomon/GenericGFPoly;)Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
.locals 12
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 149
iget-object v1, p1, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
invoke-virtual {v0, v1}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_4
.line 152
invoke-virtual {p0}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->isZero()Z
move-result v0
if-nez v0, :cond_3
invoke-virtual {p1}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->isZero()Z
move-result v0
if-eqz v0, :cond_0
goto :goto_2
:cond_0
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->coefficients:[I
.line 156
array-length v1, v0
.line 157
iget-object p1, p1, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->coefficients:[I
.line 158
array-length v2, p1
add-int v3, v1, v2
add-int/lit8 v3, v3, -0x1
.line 159
new-array v3, v3, [I
const/4 v4, 0x0
move v5, v4
:goto_0
if-ge v5, v1, :cond_2
.line 161
aget v6, v0, v5
move v7, v4
:goto_1
if-ge v7, v2, :cond_1
add-int v8, v5, v7
.line 163
aget v9, v3, v8
iget-object v10, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
aget v11, p1, v7
.line 164
invoke-virtual {v10, v6, v11}, Lcom/google/zxing/common/reedsolomon/GenericGF;->multiply(II)I
move-result v10
.line 163
invoke-static {v9, v10}, Lcom/google/zxing/common/reedsolomon/GenericGF;->addOrSubtract(II)I
move-result v9
aput v9, v3, v8
add-int/lit8 v7, v7, 0x1
goto :goto_1
:cond_1
add-int/lit8 v5, v5, 0x1
goto :goto_0
.line 167
:cond_2
new-instance p1, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
invoke-direct {p1, v0, v3}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;-><init>(Lcom/google/zxing/common/reedsolomon/GenericGF;[I)V
return-object p1
:cond_3
:goto_2
iget-object p1, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 153
invoke-virtual {p1}, Lcom/google/zxing/common/reedsolomon/GenericGF;->getZero()Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
move-result-object p1
return-object p1
.line 150
:cond_4
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "GenericGFPolys do not have same GenericGF field"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public multiplyByMonomial(II)Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
.locals 4
if-ltz p1, :cond_2
if-nez p2, :cond_0
iget-object p1, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 190
invoke-virtual {p1}, Lcom/google/zxing/common/reedsolomon/GenericGF;->getZero()Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
move-result-object p1
return-object p1
:cond_0
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->coefficients:[I
.line 192
array-length v0, v0
add-int/2addr p1, v0
.line 193
new-array p1, p1, [I
const/4 v1, 0x0
:goto_0
if-ge v1, v0, :cond_1
iget-object v2, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
iget-object v3, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->coefficients:[I
.line 195
aget v3, v3, v1
invoke-virtual {v2, v3, p2}, Lcom/google/zxing/common/reedsolomon/GenericGF;->multiply(II)I
move-result v2
aput v2, p1, v1
add-int/lit8 v1, v1, 0x1
goto :goto_0
.line 197
:cond_1
new-instance p2, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
invoke-direct {p2, v0, p1}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;-><init>(Lcom/google/zxing/common/reedsolomon/GenericGF;[I)V
return-object p2
.line 187
:cond_2
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-direct {p1}, Ljava/lang/IllegalArgumentException;-><init>()V
throw p1
.end method
.method public toString()Ljava/lang/String;
.locals 5
.line 228
new-instance v0, Ljava/lang/StringBuilder;
invoke-virtual {p0}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->getDegree()I
move-result v1
mul-int/lit8 v1, v1, 0x8
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(I)V
.line 229
invoke-virtual {p0}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->getDegree()I
move-result v1
:goto_0
if-ltz v1, :cond_8
.line 230
invoke-virtual {p0, v1}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->getCoefficient(I)I
move-result v2
if-eqz v2, :cond_7
if-gez v2, :cond_0
const-string v3, " - "
.line 233
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
neg-int v2, v2
goto :goto_1
.line 236
:cond_0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
move-result v3
if-lez v3, :cond_1
const-string v3, " + "
.line 237
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:cond_1
:goto_1
const/4 v3, 0x1
if-eqz v1, :cond_2
if-eq v2, v3, :cond_5
:cond_2
iget-object v4, p0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 241
invoke-virtual {v4, v2}, Lcom/google/zxing/common/reedsolomon/GenericGF;->log(I)I
move-result v2
if-nez v2, :cond_3
const/16 v2, 0x31
.line 243
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_2
:cond_3
if-ne v2, v3, :cond_4
const/16 v2, 0x61
.line 245
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_2
:cond_4
const-string v4, "a^"
.line 247
invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 248
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
:cond_5
:goto_2
if-eqz v1, :cond_7
if-ne v1, v3, :cond_6
const/16 v2, 0x78
.line 253
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_3
:cond_6
const-string v2, "x^"
.line 255
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 256
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
:cond_7
:goto_3
add-int/lit8 v1, v1, -0x1
goto :goto_0
.line 261
:cond_8
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,235 @@
.class public final Lcom/google/zxing/common/reedsolomon/ReedSolomonEncoder;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field public final cachedGenerators:Ljava/util/List;
.field public final field:Lcom/google/zxing/common/reedsolomon/GenericGF;
# direct methods
.method public constructor <init>(Lcom/google/zxing/common/reedsolomon/GenericGF;)V
.locals 3
.line 33
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lcom/google/zxing/common/reedsolomon/ReedSolomonEncoder;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
.line 35
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/google/zxing/common/reedsolomon/ReedSolomonEncoder;->cachedGenerators:Ljava/util/List;
.line 36
new-instance v1, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
const/4 v2, 0x1
filled-new-array {v2}, [I
move-result-object v2
invoke-direct {v1, p1, v2}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;-><init>(Lcom/google/zxing/common/reedsolomon/GenericGF;[I)V
invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
return-void
.end method
# virtual methods
.method public final buildGenerator(I)Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
.locals 7
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/ReedSolomonEncoder;->cachedGenerators:Ljava/util/List;
.line 40
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
if-lt p1, v0, :cond_0
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/ReedSolomonEncoder;->cachedGenerators:Ljava/util/List;
.line 41
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v1
const/4 v2, 0x1
sub-int/2addr v1, v2
invoke-interface {v0, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
iget-object v1, p0, Lcom/google/zxing/common/reedsolomon/ReedSolomonEncoder;->cachedGenerators:Ljava/util/List;
.line 42
invoke-interface {v1}, Ljava/util/List;->size()I
move-result v1
:goto_0
if-gt v1, p1, :cond_0
.line 43
new-instance v3, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
iget-object v4, p0, Lcom/google/zxing/common/reedsolomon/ReedSolomonEncoder;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
add-int/lit8 v5, v1, -0x1
.line 44
invoke-virtual {v4}, Lcom/google/zxing/common/reedsolomon/GenericGF;->getGeneratorBase()I
move-result v6
add-int/2addr v5, v6
invoke-virtual {v4, v5}, Lcom/google/zxing/common/reedsolomon/GenericGF;->exp(I)I
move-result v5
filled-new-array {v2, v5}, [I
move-result-object v5
invoke-direct {v3, v4, v5}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;-><init>(Lcom/google/zxing/common/reedsolomon/GenericGF;[I)V
.line 43
invoke-virtual {v0, v3}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->multiply(Lcom/google/zxing/common/reedsolomon/GenericGFPoly;)Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
move-result-object v0
iget-object v3, p0, Lcom/google/zxing/common/reedsolomon/ReedSolomonEncoder;->cachedGenerators:Ljava/util/List;
.line 45
invoke-interface {v3, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_0
iget-object v0, p0, Lcom/google/zxing/common/reedsolomon/ReedSolomonEncoder;->cachedGenerators:Ljava/util/List;
.line 49
invoke-interface {v0, p1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
return-object p1
.end method
.method public encode([II)V
.locals 6
if-eqz p2, :cond_2
.line 56
array-length v0, p1
sub-int/2addr v0, p2
if-lez v0, :cond_1
.line 60
invoke-virtual {p0, p2}, Lcom/google/zxing/common/reedsolomon/ReedSolomonEncoder;->buildGenerator(I)Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
move-result-object v1
.line 61
new-array v2, v0, [I
const/4 v3, 0x0
.line 62
invoke-static {p1, v3, v2, v3, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
.line 63
new-instance v4, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
iget-object v5, p0, Lcom/google/zxing/common/reedsolomon/ReedSolomonEncoder;->field:Lcom/google/zxing/common/reedsolomon/GenericGF;
invoke-direct {v4, v5, v2}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;-><init>(Lcom/google/zxing/common/reedsolomon/GenericGF;[I)V
const/4 v2, 0x1
.line 64
invoke-virtual {v4, p2, v2}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->multiplyByMonomial(II)Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
move-result-object v4
.line 65
invoke-virtual {v4, v1}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->divide(Lcom/google/zxing/common/reedsolomon/GenericGFPoly;)[Lcom/google/zxing/common/reedsolomon/GenericGFPoly;
move-result-object v1
aget-object v1, v1, v2
.line 66
invoke-virtual {v1}, Lcom/google/zxing/common/reedsolomon/GenericGFPoly;->getCoefficients()[I
move-result-object v1
.line 67
array-length v2, v1
sub-int/2addr p2, v2
move v2, v3
:goto_0
if-ge v2, p2, :cond_0
add-int v4, v0, v2
.line 69
aput v3, p1, v4
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_0
add-int/2addr v0, p2
.line 71
array-length p2, v1
invoke-static {v1, v3, p1, v0, p2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-void
.line 58
:cond_1
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "No data bytes provided"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 54
:cond_2
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "No error correction bytes"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method

View File

@@ -0,0 +1,497 @@
.class public final Lcom/google/zxing/datamatrix/DataMatrixWriter;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/google/zxing/Writer;
# direct methods
.method public constructor <init>()V
.locals 0
.line 39
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static convertByteMatrixToBitMatrix(Lcom/google/zxing/qrcode/encoder/ByteMatrix;II)Lcom/google/zxing/common/BitMatrix;
.locals 10
.line 164
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getWidth()I
move-result v0
.line 165
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getHeight()I
move-result v1
.line 166
invoke-static {p1, v0}, Ljava/lang/Math;->max(II)I
move-result v2
.line 167
invoke-static {p2, v1}, Ljava/lang/Math;->max(II)I
move-result v3
.line 169
div-int v4, v2, v0
div-int v5, v3, v1
invoke-static {v4, v5}, Ljava/lang/Math;->min(II)I
move-result v4
mul-int v5, v0, v4
sub-int/2addr v2, v5
.line 171
div-int/lit8 v2, v2, 0x2
mul-int v5, v1, v4
sub-int/2addr v3, v5
.line 172
div-int/lit8 v3, v3, 0x2
const/4 v5, 0x0
if-lt p2, v1, :cond_1
if-ge p1, v0, :cond_0
goto :goto_0
.line 182
:cond_0
new-instance v6, Lcom/google/zxing/common/BitMatrix;
invoke-direct {v6, p1, p2}, Lcom/google/zxing/common/BitMatrix;-><init>(II)V
goto :goto_1
.line 180
:cond_1
:goto_0
new-instance v6, Lcom/google/zxing/common/BitMatrix;
invoke-direct {v6, v0, v1}, Lcom/google/zxing/common/BitMatrix;-><init>(II)V
move v2, v5
move v3, v2
.line 185
:goto_1
invoke-virtual {v6}, Lcom/google/zxing/common/BitMatrix;->clear()V
move p1, v5
:goto_2
if-ge p1, v1, :cond_4
move v7, v2
move p2, v5
:goto_3
if-ge p2, v0, :cond_3
.line 189
invoke-virtual {p0, p2, p1}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->get(II)B
move-result v8
const/4 v9, 0x1
if-ne v8, v9, :cond_2
.line 190
invoke-virtual {v6, v7, v3, v4, v4}, Lcom/google/zxing/common/BitMatrix;->setRegion(IIII)V
:cond_2
add-int/lit8 p2, p2, 0x1
add-int/2addr v7, v4
goto :goto_3
:cond_3
add-int/lit8 p1, p1, 0x1
add-int/2addr v3, v4
goto :goto_2
:cond_4
return-object v6
.end method
.method public static encodeLowLevel(Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;Lcom/google/zxing/datamatrix/encoder/SymbolInfo;II)Lcom/google/zxing/common/BitMatrix;
.locals 12
.line 107
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getSymbolDataWidth()I
move-result v0
.line 108
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getSymbolDataHeight()I
move-result v1
.line 110
new-instance v2, Lcom/google/zxing/qrcode/encoder/ByteMatrix;
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getSymbolWidth()I
move-result v3
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getSymbolHeight()I
move-result v4
invoke-direct {v2, v3, v4}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;-><init>(II)V
const/4 v3, 0x0
move v4, v3
move v5, v4
:goto_0
if-ge v4, v1, :cond_9
.line 117
iget v6, p1, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->matrixHeight:I
rem-int v6, v4, v6
const/4 v7, 0x1
if-nez v6, :cond_2
move v6, v3
move v8, v6
.line 119
:goto_1
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getSymbolWidth()I
move-result v9
if-ge v6, v9, :cond_1
.line 120
rem-int/lit8 v9, v6, 0x2
if-nez v9, :cond_0
move v9, v7
goto :goto_2
:cond_0
move v9, v3
:goto_2
invoke-virtual {v2, v8, v5, v9}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->set(IIZ)V
add-int/2addr v8, v7
add-int/lit8 v6, v6, 0x1
goto :goto_1
:cond_1
add-int/lit8 v5, v5, 0x1
:cond_2
move v6, v3
move v8, v6
:goto_3
if-ge v6, v0, :cond_6
.line 128
iget v9, p1, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->matrixWidth:I
rem-int v9, v6, v9
if-nez v9, :cond_3
.line 129
invoke-virtual {v2, v8, v5, v7}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->set(IIZ)V
add-int/lit8 v8, v8, 0x1
.line 132
:cond_3
invoke-virtual {p0, v6, v4}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->getBit(II)Z
move-result v9
invoke-virtual {v2, v8, v5, v9}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->set(IIZ)V
add-int/lit8 v9, v8, 0x1
.line 135
iget v10, p1, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->matrixWidth:I
rem-int v11, v6, v10
sub-int/2addr v10, v7
if-ne v11, v10, :cond_5
.line 136
rem-int/lit8 v10, v4, 0x2
if-nez v10, :cond_4
move v10, v7
goto :goto_4
:cond_4
move v10, v3
:goto_4
invoke-virtual {v2, v9, v5, v10}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->set(IIZ)V
add-int/lit8 v8, v8, 0x2
goto :goto_5
:cond_5
move v8, v9
:goto_5
add-int/lit8 v6, v6, 0x1
goto :goto_3
:cond_6
add-int/lit8 v6, v5, 0x1
.line 142
iget v8, p1, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->matrixHeight:I
rem-int v9, v4, v8
sub-int/2addr v8, v7
if-ne v9, v8, :cond_8
move v8, v3
move v9, v8
.line 144
:goto_6
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getSymbolWidth()I
move-result v10
if-ge v8, v10, :cond_7
.line 145
invoke-virtual {v2, v9, v6, v7}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->set(IIZ)V
add-int/2addr v9, v7
add-int/lit8 v8, v8, 0x1
goto :goto_6
:cond_7
add-int/lit8 v5, v5, 0x2
goto :goto_7
:cond_8
move v5, v6
:goto_7
add-int/lit8 v4, v4, 0x1
goto :goto_0
.line 152
:cond_9
invoke-static {v2, p2, p3}, Lcom/google/zxing/datamatrix/DataMatrixWriter;->convertByteMatrixToBitMatrix(Lcom/google/zxing/qrcode/encoder/ByteMatrix;II)Lcom/google/zxing/common/BitMatrix;
move-result-object p0
return-object p0
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 2
.line 49
invoke-virtual {p1}, Ljava/lang/String;->isEmpty()Z
move-result v0
if-nez v0, :cond_4
.line 53
sget-object v0, Lcom/google/zxing/BarcodeFormat;->DATA_MATRIX:Lcom/google/zxing/BarcodeFormat;
if-ne p2, v0, :cond_3
if-ltz p3, :cond_2
if-ltz p4, :cond_2
.line 62
sget-object p2, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;->FORCE_NONE:Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
if-eqz p5, :cond_1
.line 66
sget-object v0, Lcom/google/zxing/EncodeHintType;->DATA_MATRIX_SHAPE:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
if-eqz v0, :cond_0
move-object p2, v0
.line 71
:cond_0
sget-object v0, Lcom/google/zxing/EncodeHintType;->MIN_SIZE:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
invoke-static {v0}, Lcom/amazonaws/handlers/HandlerChainFactory$$ExternalSyntheticThrowCCEIfNotNull0;->m(Ljava/lang/Object;)V
.line 76
sget-object v0, Lcom/google/zxing/EncodeHintType;->MAX_SIZE:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p5
invoke-static {p5}, Lcom/amazonaws/handlers/HandlerChainFactory$$ExternalSyntheticThrowCCEIfNotNull0;->m(Ljava/lang/Object;)V
:cond_1
const/4 p5, 0x0
.line 84
invoke-static {p1, p2, p5, p5}, Lcom/google/zxing/datamatrix/encoder/HighLevelEncoder;->encodeHighLevel(Ljava/lang/String;Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;Lcom/google/zxing/Dimension;Lcom/google/zxing/Dimension;)Ljava/lang/String;
move-result-object p1
.line 86
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
const/4 v1, 0x1
invoke-static {v0, p2, p5, p5, v1}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->lookup(ILcom/google/zxing/datamatrix/encoder/SymbolShapeHint;Lcom/google/zxing/Dimension;Lcom/google/zxing/Dimension;Z)Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
move-result-object p2
.line 89
invoke-static {p1, p2}, Lcom/google/zxing/datamatrix/encoder/ErrorCorrection;->encodeECC200(Ljava/lang/String;Lcom/google/zxing/datamatrix/encoder/SymbolInfo;)Ljava/lang/String;
move-result-object p1
.line 92
new-instance p5, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;
invoke-virtual {p2}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getSymbolDataWidth()I
move-result v0
invoke-virtual {p2}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getSymbolDataHeight()I
move-result v1
invoke-direct {p5, p1, v0, v1}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;-><init>(Ljava/lang/CharSequence;II)V
.line 93
invoke-virtual {p5}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->place()V
.line 96
invoke-static {p5, p2, p3, p4}, Lcom/google/zxing/datamatrix/DataMatrixWriter;->encodeLowLevel(Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;Lcom/google/zxing/datamatrix/encoder/SymbolInfo;II)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
.line 58
:cond_2
new-instance p1, Ljava/lang/IllegalArgumentException;
new-instance p2, Ljava/lang/StringBuilder;
const-string p5, "Requested dimensions can\'t be negative: "
invoke-direct {p2, p5}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const/16 p3, 0x78
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {p2, p4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 54
:cond_3
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
const-string p3, "Can only encode DATA_MATRIX, but got "
invoke-virtual {p3, p2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 50
:cond_4
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "Found empty contents"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method

View File

@@ -0,0 +1,303 @@
.class public final Lcom/google/zxing/datamatrix/encoder/ASCIIEncoder;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/google/zxing/datamatrix/encoder/Encoder;
# direct methods
.method public constructor <init>()V
.locals 0
.line 19
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static encodeASCIIDigits(CC)C
.locals 3
.line 75
invoke-static {p0}, Lcom/google/zxing/datamatrix/encoder/HighLevelEncoder;->isDigit(C)Z
move-result v0
if-eqz v0, :cond_0
invoke-static {p1}, Lcom/google/zxing/datamatrix/encoder/HighLevelEncoder;->isDigit(C)Z
move-result v0
if-eqz v0, :cond_0
add-int/lit8 p0, p0, -0x30
mul-int/lit8 p0, p0, 0xa
add-int/lit8 p1, p1, -0x30
add-int/2addr p0, p1
add-int/lit16 p0, p0, 0x82
int-to-char p0, p0
return p0
.line 79
:cond_0
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "not digits: "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {v0, p0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public encode(Lcom/google/zxing/datamatrix/encoder/EncoderContext;)V
.locals 6
.line 29
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getMessage()Ljava/lang/String;
move-result-object v0
iget v1, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
invoke-static {v0, v1}, Lcom/google/zxing/datamatrix/encoder/HighLevelEncoder;->determineConsecutiveDigitCount(Ljava/lang/CharSequence;I)I
move-result v0
const/4 v1, 0x1
const/4 v2, 0x2
if-lt v0, v2, :cond_0
.line 31
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getMessage()Ljava/lang/String;
move-result-object v0
iget v3, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
invoke-virtual {v0, v3}, Ljava/lang/String;->charAt(I)C
move-result v0
.line 32
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getMessage()Ljava/lang/String;
move-result-object v3
iget v4, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
add-int/2addr v4, v1
invoke-virtual {v3, v4}, Ljava/lang/String;->charAt(I)C
move-result v1
.line 31
invoke-static {v0, v1}, Lcom/google/zxing/datamatrix/encoder/ASCIIEncoder;->encodeASCIIDigits(CC)C
move-result v0
invoke-virtual {p1, v0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
.line 33
iget v0, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
add-int/2addr v0, v2
iput v0, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
return-void
.line 35
:cond_0
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCurrentChar()C
move-result v0
.line 36
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getMessage()Ljava/lang/String;
move-result-object v3
iget v4, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/ASCIIEncoder;->getEncodingMode()I
move-result v5
invoke-static {v3, v4, v5}, Lcom/google/zxing/datamatrix/encoder/HighLevelEncoder;->lookAheadTest(Ljava/lang/CharSequence;II)I
move-result v3
.line 37
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/ASCIIEncoder;->getEncodingMode()I
move-result v4
if-eq v3, v4, :cond_6
if-eq v3, v1, :cond_5
if-eq v3, v2, :cond_4
const/4 v0, 0x3
if-eq v3, v0, :cond_3
const/4 v0, 0x4
if-eq v3, v0, :cond_2
const/4 v0, 0x5
if-ne v3, v0, :cond_1
const/16 v1, 0xe7
.line 40
invoke-virtual {p1, v1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
.line 41
invoke-virtual {p1, v0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
return-void
.line 60
:cond_1
new-instance p1, Ljava/lang/IllegalStateException;
const-string v0, "Illegal mode: "
invoke-static {v3}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
:cond_2
const/16 v1, 0xf0
.line 56
invoke-virtual {p1, v1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
.line 57
invoke-virtual {p1, v0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
return-void
:cond_3
const/16 v1, 0xee
.line 48
invoke-virtual {p1, v1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
.line 49
invoke-virtual {p1, v0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
return-void
:cond_4
const/16 v0, 0xef
.line 52
invoke-virtual {p1, v0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
.line 53
invoke-virtual {p1, v2}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
return-void
:cond_5
const/16 v0, 0xe6
.line 44
invoke-virtual {p1, v0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
.line 45
invoke-virtual {p1, v1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
return-void
.line 62
:cond_6
invoke-static {v0}, Lcom/google/zxing/datamatrix/encoder/HighLevelEncoder;->isExtendedASCII(C)Z
move-result v2
if-eqz v2, :cond_7
const/16 v2, 0xeb
.line 63
invoke-virtual {p1, v2}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
add-int/lit8 v0, v0, -0x7f
int-to-char v0, v0
.line 64
invoke-virtual {p1, v0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
.line 65
iget v0, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
add-int/2addr v0, v1
iput v0, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
return-void
:cond_7
add-int/2addr v0, v1
int-to-char v0, v0
.line 67
invoke-virtual {p1, v0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
.line 68
iget v0, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
add-int/2addr v0, v1
iput v0, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
return-void
.end method
.method public getEncodingMode()I
.locals 1
const/4 v0, 0x0
return v0
.end method

View File

@@ -0,0 +1,255 @@
.class public final Lcom/google/zxing/datamatrix/encoder/Base256Encoder;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/google/zxing/datamatrix/encoder/Encoder;
# direct methods
.method public constructor <init>()V
.locals 0
.line 19
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static randomize255State(CI)C
.locals 1
mul-int/lit16 p1, p1, 0x95
const/16 v0, 0xff
.line 66
rem-int/2addr p1, v0
add-int/lit8 p1, p1, 0x1
add-int/2addr p0, p1
if-gt p0, v0, :cond_0
int-to-char p0, p0
return p0
:cond_0
add-int/lit16 p0, p0, -0x100
int-to-char p0, p0
return p0
.end method
# virtual methods
.method public encode(Lcom/google/zxing/datamatrix/encoder/EncoderContext;)V
.locals 6
.line 28
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const/4 v1, 0x0
.line 29
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 30
:cond_0
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->hasMoreCharacters()Z
move-result v2
const/4 v3, 0x1
if-eqz v2, :cond_1
.line 31
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCurrentChar()C
move-result v2
.line 32
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 34
iget v2, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
add-int/2addr v2, v3
iput v2, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
.line 36
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getMessage()Ljava/lang/String;
move-result-object v2
iget v4, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/Base256Encoder;->getEncodingMode()I
move-result v5
invoke-static {v2, v4, v5}, Lcom/google/zxing/datamatrix/encoder/HighLevelEncoder;->lookAheadTest(Ljava/lang/CharSequence;II)I
move-result v2
.line 37
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/Base256Encoder;->getEncodingMode()I
move-result v4
if-eq v2, v4, :cond_0
.line 39
invoke-virtual {p1, v1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
.line 43
:cond_1
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
move-result v2
sub-int/2addr v2, v3
.line 45
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCodewordCount()I
move-result v4
add-int/2addr v4, v2
add-int/2addr v4, v3
.line 46
invoke-virtual {p1, v4}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->updateSymbolInfo(I)V
.line 47
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getSymbolInfo()Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
move-result-object v5
invoke-virtual {v5}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getDataCapacity()I
move-result v5
sub-int/2addr v5, v4
if-lez v5, :cond_2
move v4, v3
goto :goto_0
:cond_2
move v4, v1
.line 48
:goto_0
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->hasMoreCharacters()Z
move-result v5
if-nez v5, :cond_3
if-eqz v4, :cond_5
:cond_3
const/16 v4, 0xf9
if-gt v2, v4, :cond_4
int-to-char v2, v2
.line 50
invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->setCharAt(IC)V
goto :goto_1
:cond_4
const/16 v5, 0x613
if-gt v2, v5, :cond_7
.line 52
div-int/lit16 v5, v2, 0xfa
add-int/2addr v5, v4
int-to-char v4, v5
invoke-virtual {v0, v1, v4}, Ljava/lang/StringBuilder;->setCharAt(IC)V
.line 53
rem-int/lit16 v2, v2, 0xfa
int-to-char v2, v2
invoke-virtual {v0, v3, v2}, Ljava/lang/StringBuilder;->insert(IC)Ljava/lang/StringBuilder;
.line 59
:cond_5
:goto_1
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
move-result v2
:goto_2
if-ge v1, v2, :cond_6
.line 61
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->charAt(I)C
move-result v4
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCodewordCount()I
move-result v5
add-int/2addr v5, v3
.line 60
invoke-static {v4, v5}, Lcom/google/zxing/datamatrix/encoder/Base256Encoder;->randomize255State(CI)C
move-result v4
invoke-virtual {p1, v4}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
add-int/lit8 v1, v1, 0x1
goto :goto_2
:cond_6
return-void
.line 55
:cond_7
new-instance p1, Ljava/lang/IllegalStateException;
const-string v0, "Message length not in valid ranges: "
invoke-static {v2}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public getEncodingMode()I
.locals 1
const/4 v0, 0x5
return v0
.end method

View File

@@ -0,0 +1,655 @@
.class public Lcom/google/zxing/datamatrix/encoder/C40Encoder;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/google/zxing/datamatrix/encoder/Encoder;
# direct methods
.method public constructor <init>()V
.locals 0
.line 19
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static encodeToCodewords(Ljava/lang/CharSequence;I)Ljava/lang/String;
.locals 4
.line 173
invoke-interface {p0, p1}, Ljava/lang/CharSequence;->charAt(I)C
move-result v0
add-int/lit8 v1, p1, 0x1
.line 174
invoke-interface {p0, v1}, Ljava/lang/CharSequence;->charAt(I)C
move-result v1
const/4 v2, 0x2
add-int/2addr p1, v2
.line 175
invoke-interface {p0, p1}, Ljava/lang/CharSequence;->charAt(I)C
move-result p0
mul-int/lit16 v0, v0, 0x640
mul-int/lit8 v1, v1, 0x28
add-int/2addr v0, v1
add-int/2addr v0, p0
const/4 p0, 0x1
add-int/2addr v0, p0
.line 177
div-int/lit16 p1, v0, 0x100
int-to-char p1, p1
.line 178
rem-int/lit16 v0, v0, 0x100
int-to-char v0, v0
.line 179
new-instance v1, Ljava/lang/String;
new-array v2, v2, [C
const/4 v3, 0x0
aput-char p1, v2, v3
aput-char v0, v2, p0
invoke-direct {v1, v2}, Ljava/lang/String;-><init>([C)V
return-object v1
.end method
.method public static writeNextTriplet(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/StringBuilder;)V
.locals 2
const/4 v0, 0x0
.line 80
invoke-static {p1, v0}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;->encodeToCodewords(Ljava/lang/CharSequence;I)Ljava/lang/String;
move-result-object v1
invoke-virtual {p0, v1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodewords(Ljava/lang/String;)V
const/4 p0, 0x3
.line 81
invoke-virtual {p1, v0, p0}, Ljava/lang/StringBuilder;->delete(II)Ljava/lang/StringBuilder;
return-void
.end method
# virtual methods
.method public final backtrackOneCharacter(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;I)I
.locals 1
.line 70
invoke-virtual {p2}, Ljava/lang/StringBuilder;->length()I
move-result v0
sub-int p4, v0, p4
.line 71
invoke-virtual {p2, p4, v0}, Ljava/lang/StringBuilder;->delete(II)Ljava/lang/StringBuilder;
.line 72
iget p2, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
add-int/lit8 p2, p2, -0x1
iput p2, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
.line 73
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCurrentChar()C
move-result p2
.line 74
invoke-virtual {p0, p2, p3}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;->encodeChar(CLjava/lang/StringBuilder;)I
move-result p2
.line 75
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->resetSymbolInfo()V
return p2
.end method
.method public encode(Lcom/google/zxing/datamatrix/encoder/EncoderContext;)V
.locals 8
.line 29
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
.line 30
:cond_0
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->hasMoreCharacters()Z
move-result v1
if-eqz v1, :cond_6
.line 31
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCurrentChar()C
move-result v1
.line 32
iget v2, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
const/4 v3, 0x1
add-int/2addr v2, v3
iput v2, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
.line 34
invoke-virtual {p0, v1, v0}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;->encodeChar(CLjava/lang/StringBuilder;)I
move-result v1
.line 36
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
move-result v2
const/4 v4, 0x3
div-int/2addr v2, v4
shl-int/2addr v2, v3
.line 38
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCodewordCount()I
move-result v5
add-int/2addr v5, v2
.line 39
invoke-virtual {p1, v5}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->updateSymbolInfo(I)V
.line 40
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getSymbolInfo()Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
move-result-object v2
invoke-virtual {v2}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getDataCapacity()I
move-result v2
sub-int/2addr v2, v5
.line 42
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->hasMoreCharacters()Z
move-result v5
if-nez v5, :cond_5
.line 44
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
.line 45
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
move-result v6
rem-int/2addr v6, v4
const/4 v7, 0x2
if-ne v6, v7, :cond_2
if-lt v2, v7, :cond_1
if-le v2, v7, :cond_2
.line 46
:cond_1
invoke-virtual {p0, p1, v0, v5, v1}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;->backtrackOneCharacter(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;I)I
move-result v1
.line 48
:cond_2
:goto_0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
move-result v6
rem-int/2addr v6, v4
if-ne v6, v3, :cond_6
if-gt v1, v4, :cond_3
if-ne v2, v3, :cond_4
:cond_3
if-le v1, v4, :cond_6
.line 50
:cond_4
invoke-virtual {p0, p1, v0, v5, v1}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;->backtrackOneCharacter(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/StringBuilder;Ljava/lang/StringBuilder;I)I
move-result v1
goto :goto_0
.line 55
:cond_5
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
move-result v1
.line 56
rem-int/2addr v1, v4
if-nez v1, :cond_0
.line 57
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getMessage()Ljava/lang/String;
move-result-object v1
iget v2, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;->getEncodingMode()I
move-result v3
invoke-static {v1, v2, v3}, Lcom/google/zxing/datamatrix/encoder/HighLevelEncoder;->lookAheadTest(Ljava/lang/CharSequence;II)I
move-result v1
.line 58
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;->getEncodingMode()I
move-result v2
if-eq v1, v2, :cond_0
const/4 v1, 0x0
.line 60
invoke-virtual {p1, v1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
.line 65
:cond_6
invoke-virtual {p0, p1, v0}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;->handleEOD(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/StringBuilder;)V
return-void
.end method
.method public encodeChar(CLjava/lang/StringBuilder;)I
.locals 4
const/4 v0, 0x1
const/16 v1, 0x20
if-ne p1, v1, :cond_0
const/4 p1, 0x3
.line 130
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v0
:cond_0
const/16 v2, 0x30
if-lt p1, v2, :cond_1
const/16 v2, 0x39
if-gt p1, v2, :cond_1
add-int/lit8 p1, p1, -0x2c
int-to-char p1, p1
.line 134
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v0
:cond_1
const/16 v2, 0x41
if-lt p1, v2, :cond_2
const/16 v2, 0x5a
if-gt p1, v2, :cond_2
add-int/lit8 p1, p1, -0x33
int-to-char p1, p1
.line 138
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v0
:cond_2
const/4 v2, 0x2
if-ge p1, v1, :cond_3
const/4 v0, 0x0
.line 142
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 143
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v2
:cond_3
const/16 v1, 0x21
if-lt p1, v1, :cond_4
const/16 v3, 0x2f
if-gt p1, v3, :cond_4
.line 147
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
sub-int/2addr p1, v1
int-to-char p1, p1
.line 148
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v2
:cond_4
const/16 v1, 0x3a
if-lt p1, v1, :cond_5
const/16 v1, 0x40
if-gt p1, v1, :cond_5
.line 152
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 p1, p1, -0x2b
int-to-char p1, p1
.line 153
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v2
:cond_5
const/16 v1, 0x5b
if-lt p1, v1, :cond_6
const/16 v1, 0x5f
if-gt p1, v1, :cond_6
.line 157
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 p1, p1, -0x45
int-to-char p1, p1
.line 158
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v2
:cond_6
const/16 v0, 0x60
if-lt p1, v0, :cond_7
const/16 v1, 0x7f
if-gt p1, v1, :cond_7
.line 162
invoke-virtual {p2, v2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
sub-int/2addr p1, v0
int-to-char p1, p1
.line 163
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v2
:cond_7
const-string v0, "\u0001\u001e"
.line 166
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 p1, p1, -0x80
int-to-char p1, p1
.line 168
invoke-virtual {p0, p1, p2}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;->encodeChar(CLjava/lang/StringBuilder;)I
move-result p1
add-int/2addr p1, v2
return p1
.end method
.method public getEncodingMode()I
.locals 1
const/4 v0, 0x1
return v0
.end method
.method public handleEOD(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/StringBuilder;)V
.locals 7
.line 91
invoke-virtual {p2}, Ljava/lang/StringBuilder;->length()I
move-result v0
const/4 v1, 0x3
div-int/2addr v0, v1
const/4 v2, 0x1
shl-int/2addr v0, v2
.line 92
invoke-virtual {p2}, Ljava/lang/StringBuilder;->length()I
move-result v3
rem-int/2addr v3, v1
.line 94
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCodewordCount()I
move-result v4
add-int/2addr v4, v0
.line 95
invoke-virtual {p1, v4}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->updateSymbolInfo(I)V
.line 96
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getSymbolInfo()Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
move-result-object v0
invoke-virtual {v0}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getDataCapacity()I
move-result v0
sub-int/2addr v0, v4
const/4 v4, 0x2
const/4 v5, 0x0
const/16 v6, 0xfe
if-ne v3, v4, :cond_1
.line 99
invoke-virtual {p2, v5}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 100
:goto_0
invoke-virtual {p2}, Ljava/lang/StringBuilder;->length()I
move-result v0
if-lt v0, v1, :cond_0
.line 101
invoke-static {p1, p2}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;->writeNextTriplet(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/StringBuilder;)V
goto :goto_0
.line 103
:cond_0
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->hasMoreCharacters()Z
move-result p2
if-eqz p2, :cond_7
.line 104
invoke-virtual {p1, v6}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
goto :goto_3
:cond_1
if-ne v0, v2, :cond_4
if-ne v3, v2, :cond_4
.line 107
:goto_1
invoke-virtual {p2}, Ljava/lang/StringBuilder;->length()I
move-result v0
if-lt v0, v1, :cond_2
.line 108
invoke-static {p1, p2}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;->writeNextTriplet(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/StringBuilder;)V
goto :goto_1
.line 110
:cond_2
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->hasMoreCharacters()Z
move-result p2
if-eqz p2, :cond_3
.line 111
invoke-virtual {p1, v6}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
.line 114
:cond_3
iget p2, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
sub-int/2addr p2, v2
iput p2, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
goto :goto_3
:cond_4
if-nez v3, :cond_8
.line 116
:goto_2
invoke-virtual {p2}, Ljava/lang/StringBuilder;->length()I
move-result v2
if-lt v2, v1, :cond_5
.line 117
invoke-static {p1, p2}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;->writeNextTriplet(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/StringBuilder;)V
goto :goto_2
:cond_5
if-gtz v0, :cond_6
.line 119
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->hasMoreCharacters()Z
move-result p2
if-eqz p2, :cond_7
.line 120
:cond_6
invoke-virtual {p1, v6}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
.line 125
:cond_7
:goto_3
invoke-virtual {p1, v5}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
return-void
.line 123
:cond_8
new-instance p1, Ljava/lang/IllegalStateException;
const-string p2, "Unexpected case. Please report!"
invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.end method

View File

@@ -0,0 +1,59 @@
.class public final Lcom/google/zxing/datamatrix/encoder/DataMatrixSymbolInfo144;
.super Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
.source "SourceFile"
# direct methods
.method public constructor <init>()V
.locals 9
const/4 v1, 0x0
const/16 v2, 0x616
const/16 v3, 0x26c
const/16 v4, 0x16
const/16 v5, 0x16
const/16 v6, 0x24
const/4 v7, -0x1
const/16 v8, 0x3e
move-object v0, p0
.line 22
invoke-direct/range {v0 .. v8}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;-><init>(ZIIIIIII)V
return-void
.end method
# virtual methods
.method public getDataLengthForInterleavedBlock(I)I
.locals 1
const/16 v0, 0x8
if-gt p1, v0, :cond_0
const/16 p1, 0x9c
return p1
:cond_0
const/16 p1, 0x9b
return p1
.end method
.method public getInterleavedBlockCount()I
.locals 1
const/16 v0, 0xa
return v0
.end method

View File

@@ -0,0 +1,793 @@
.class public Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field public final bits:[B
.field public final codewords:Ljava/lang/CharSequence;
.field public final numcols:I
.field public final numrows:I
# direct methods
.method public constructor <init>(Ljava/lang/CharSequence;II)V
.locals 0
.line 38
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->codewords:Ljava/lang/CharSequence;
iput p2, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
iput p3, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
mul-int/2addr p2, p3
.line 42
new-array p1, p2, [B
iput-object p1, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->bits:[B
const/4 p2, -0x1
.line 43
invoke-static {p1, p2}, Ljava/util/Arrays;->fill([BB)V
return-void
.end method
# virtual methods
.method public final corner1(I)V
.locals 6
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
const/4 v1, 0x1
sub-int/2addr v0, v1
const/4 v2, 0x0
.line 155
invoke-virtual {p0, v0, v2, p1, v1}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
sub-int/2addr v0, v1
const/4 v3, 0x2
.line 156
invoke-virtual {p0, v0, v1, p1, v3}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
sub-int/2addr v0, v1
const/4 v4, 0x3
.line 157
invoke-virtual {p0, v0, v3, p1, v4}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v3
const/4 v5, 0x4
.line 158
invoke-virtual {p0, v2, v0, p1, v5}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v1
const/4 v5, 0x5
.line 159
invoke-virtual {p0, v2, v0, p1, v5}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v1
const/4 v2, 0x6
.line 160
invoke-virtual {p0, v1, v0, p1, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v1
const/4 v2, 0x7
.line 161
invoke-virtual {p0, v3, v0, p1, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v1
const/16 v1, 0x8
.line 162
invoke-virtual {p0, v4, v0, p1, v1}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
return-void
.end method
.method public final corner2(I)V
.locals 6
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
const/4 v1, 0x3
sub-int/2addr v0, v1
const/4 v2, 0x0
const/4 v3, 0x1
.line 166
invoke-virtual {p0, v0, v2, p1, v3}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
const/4 v4, 0x2
sub-int/2addr v0, v4
.line 167
invoke-virtual {p0, v0, v2, p1, v4}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
sub-int/2addr v0, v3
.line 168
invoke-virtual {p0, v0, v2, p1, v1}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
const/4 v5, 0x4
sub-int/2addr v0, v5
.line 169
invoke-virtual {p0, v2, v0, p1, v5}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v1
const/4 v1, 0x5
.line 170
invoke-virtual {p0, v2, v0, p1, v1}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v4
const/4 v1, 0x6
.line 171
invoke-virtual {p0, v2, v0, p1, v1}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v3
const/4 v1, 0x7
.line 172
invoke-virtual {p0, v2, v0, p1, v1}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v3
const/16 v1, 0x8
.line 173
invoke-virtual {p0, v3, v0, p1, v1}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
return-void
.end method
.method public final corner3(I)V
.locals 6
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
const/4 v1, 0x3
sub-int/2addr v0, v1
const/4 v2, 0x0
const/4 v3, 0x1
.line 177
invoke-virtual {p0, v0, v2, p1, v3}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
const/4 v4, 0x2
sub-int/2addr v0, v4
.line 178
invoke-virtual {p0, v0, v2, p1, v4}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
sub-int/2addr v0, v3
.line 179
invoke-virtual {p0, v0, v2, p1, v1}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v4
const/4 v5, 0x4
.line 180
invoke-virtual {p0, v2, v0, p1, v5}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v3
const/4 v5, 0x5
.line 181
invoke-virtual {p0, v2, v0, p1, v5}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v3
const/4 v2, 0x6
.line 182
invoke-virtual {p0, v3, v0, p1, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v3
const/4 v2, 0x7
.line 183
invoke-virtual {p0, v4, v0, p1, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v3
const/16 v2, 0x8
.line 184
invoke-virtual {p0, v1, v0, p1, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
return-void
.end method
.method public final corner4(I)V
.locals 6
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
const/4 v1, 0x1
sub-int/2addr v0, v1
const/4 v2, 0x0
.line 188
invoke-virtual {p0, v0, v2, p1, v1}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
sub-int/2addr v0, v1
iget v3, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v3, v1
const/4 v4, 0x2
.line 189
invoke-virtual {p0, v0, v3, p1, v4}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
const/4 v3, 0x3
sub-int/2addr v0, v3
.line 190
invoke-virtual {p0, v2, v0, p1, v3}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v4
const/4 v5, 0x4
.line 191
invoke-virtual {p0, v2, v0, p1, v5}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v1
const/4 v5, 0x5
.line 192
invoke-virtual {p0, v2, v0, p1, v5}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v3
const/4 v2, 0x6
.line 193
invoke-virtual {p0, v1, v0, p1, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v4
const/4 v2, 0x7
.line 194
invoke-virtual {p0, v1, v0, p1, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v0, v1
const/16 v2, 0x8
.line 195
invoke-virtual {p0, v1, v0, p1, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
return-void
.end method
.method public final getBit(II)Z
.locals 2
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->bits:[B
iget v1, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
mul-int/2addr p2, v1
add-int/2addr p2, p1
.line 59
aget-byte p1, v0, p2
const/4 p2, 0x1
if-ne p1, p2, :cond_0
return p2
:cond_0
const/4 p1, 0x0
return p1
.end method
.method public final hasBit(II)Z
.locals 2
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->bits:[B
iget v1, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
mul-int/2addr p2, v1
add-int/2addr p2, p1
.line 67
aget-byte p1, v0, p2
if-ltz p1, :cond_0
const/4 p1, 0x1
return p1
:cond_0
const/4 p1, 0x0
return p1
.end method
.method public final module(IIII)V
.locals 1
if-gez p1, :cond_0
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
add-int/2addr p1, v0
add-int/lit8 v0, v0, 0x4
.line 124
rem-int/lit8 v0, v0, 0x8
rsub-int/lit8 v0, v0, 0x4
add-int/2addr p2, v0
:cond_0
if-gez p2, :cond_1
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
add-int/2addr p2, v0
add-int/lit8 v0, v0, 0x4
.line 128
rem-int/lit8 v0, v0, 0x8
rsub-int/lit8 v0, v0, 0x4
add-int/2addr p1, v0
:cond_1
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->codewords:Ljava/lang/CharSequence;
.line 131
invoke-interface {v0, p3}, Ljava/lang/CharSequence;->charAt(I)C
move-result p3
rsub-int/lit8 p4, p4, 0x8
const/4 v0, 0x1
shl-int p4, v0, p4
and-int/2addr p3, p4
if-eqz p3, :cond_2
goto :goto_0
:cond_2
const/4 v0, 0x0
.line 133
:goto_0
invoke-virtual {p0, p2, p1, v0}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->setBit(IIZ)V
return-void
.end method
.method public final place()V
.locals 8
const/4 v0, 0x0
const/4 v1, 0x4
move v2, v0
move v3, v1
:cond_0
iget v4, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
if-ne v3, v4, :cond_1
if-nez v0, :cond_1
add-int/lit8 v4, v2, 0x1
.line 78
invoke-virtual {p0, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->corner1(I)V
move v2, v4
:cond_1
iget v4, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
const/4 v5, 0x2
sub-int/2addr v4, v5
if-ne v3, v4, :cond_2
if-nez v0, :cond_2
iget v4, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
.line 80
rem-int/2addr v4, v1
if-eqz v4, :cond_2
add-int/lit8 v4, v2, 0x1
.line 81
invoke-virtual {p0, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->corner2(I)V
move v2, v4
:cond_2
iget v4, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
sub-int/2addr v4, v5
if-ne v3, v4, :cond_3
if-nez v0, :cond_3
iget v4, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
.line 83
rem-int/lit8 v4, v4, 0x8
if-ne v4, v1, :cond_3
add-int/lit8 v4, v2, 0x1
.line 84
invoke-virtual {p0, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->corner3(I)V
move v2, v4
:cond_3
iget v4, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
add-int/2addr v4, v1
if-ne v3, v4, :cond_4
if-ne v0, v5, :cond_4
iget v4, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
.line 86
rem-int/lit8 v4, v4, 0x8
if-nez v4, :cond_4
add-int/lit8 v4, v2, 0x1
.line 87
invoke-virtual {p0, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->corner4(I)V
move v2, v4
:cond_4
:goto_0
iget v4, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
if-ge v3, v4, :cond_5
if-ltz v0, :cond_5
.line 91
invoke-virtual {p0, v0, v3}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->hasBit(II)Z
move-result v4
if-nez v4, :cond_5
add-int/lit8 v4, v2, 0x1
.line 92
invoke-virtual {p0, v3, v0, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->utah(III)V
move v2, v4
:cond_5
add-int/lit8 v4, v3, -0x2
add-int/lit8 v6, v0, 0x2
if-ltz v4, :cond_7
iget v7, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
if-lt v6, v7, :cond_6
goto :goto_1
:cond_6
move v3, v4
move v0, v6
goto :goto_0
:cond_7
:goto_1
add-int/lit8 v3, v3, -0x1
add-int/lit8 v0, v0, 0x5
:goto_2
if-ltz v3, :cond_8
iget v4, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
if-ge v0, v4, :cond_8
.line 102
invoke-virtual {p0, v0, v3}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->hasBit(II)Z
move-result v4
if-nez v4, :cond_8
add-int/lit8 v4, v2, 0x1
.line 103
invoke-virtual {p0, v3, v0, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->utah(III)V
move v2, v4
:cond_8
add-int/lit8 v4, v3, 0x2
add-int/lit8 v6, v0, -0x2
iget v7, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
if-ge v4, v7, :cond_a
if-gez v6, :cond_9
goto :goto_3
:cond_9
move v3, v4
move v0, v6
goto :goto_2
:cond_a
:goto_3
add-int/lit8 v3, v3, 0x5
add-int/lit8 v0, v0, -0x1
if-lt v3, v7, :cond_0
iget v4, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
if-lt v0, v4, :cond_0
const/4 v0, 0x1
sub-int/2addr v4, v0
sub-int/2addr v7, v0
.line 115
invoke-virtual {p0, v4, v7}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->hasBit(II)Z
move-result v1
if-nez v1, :cond_b
iget v1, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v1, v0
iget v2, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
sub-int/2addr v2, v0
.line 116
invoke-virtual {p0, v1, v2, v0}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->setBit(IIZ)V
iget v1, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
sub-int/2addr v1, v5
iget v2, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numrows:I
sub-int/2addr v2, v5
.line 117
invoke-virtual {p0, v1, v2, v0}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->setBit(IIZ)V
:cond_b
return-void
.end method
.method public final setBit(IIZ)V
.locals 2
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->bits:[B
iget v1, p0, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->numcols:I
mul-int/2addr p2, v1
add-int/2addr p2, p1
int-to-byte p1, p3
.line 63
aput-byte p1, v0, p2
return-void
.end method
.method public final utah(III)V
.locals 4
add-int/lit8 v0, p1, -0x2
add-int/lit8 v1, p2, -0x2
const/4 v2, 0x1
.line 144
invoke-virtual {p0, v0, v1, p3, v2}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
add-int/lit8 v2, p2, -0x1
const/4 v3, 0x2
.line 145
invoke-virtual {p0, v0, v2, p3, v3}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
add-int/lit8 v0, p1, -0x1
const/4 v3, 0x3
.line 146
invoke-virtual {p0, v0, v1, p3, v3}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
const/4 v3, 0x4
.line 147
invoke-virtual {p0, v0, v2, p3, v3}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
const/4 v3, 0x5
.line 148
invoke-virtual {p0, v0, p2, p3, v3}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
const/4 v0, 0x6
.line 149
invoke-virtual {p0, p1, v1, p3, v0}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
const/4 v0, 0x7
.line 150
invoke-virtual {p0, p1, v2, p3, v0}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
const/16 v0, 0x8
.line 151
invoke-virtual {p0, p1, p2, p3, v0}, Lcom/google/zxing/datamatrix/encoder/DefaultPlacement;->module(IIII)V
return-void
.end method

View File

@@ -0,0 +1,509 @@
.class public final Lcom/google/zxing/datamatrix/encoder/EdifactEncoder;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/google/zxing/datamatrix/encoder/Encoder;
# direct methods
.method public constructor <init>()V
.locals 0
.line 19
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static encodeChar(CLjava/lang/StringBuilder;)V
.locals 2
const/16 v0, 0x20
if-lt p0, v0, :cond_0
const/16 v0, 0x3f
if-gt p0, v0, :cond_0
.line 110
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return-void
:cond_0
const/16 v0, 0x40
if-lt p0, v0, :cond_1
const/16 v1, 0x5e
if-gt p0, v1, :cond_1
sub-int/2addr p0, v0
int-to-char p0, p0
.line 112
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return-void
.line 114
:cond_1
invoke-static {p0}, Lcom/google/zxing/datamatrix/encoder/HighLevelEncoder;->illegalCharacter(C)V
return-void
.end method
.method private static encodeToCodewords(Ljava/lang/CharSequence;I)Ljava/lang/String;
.locals 8
.line 119
invoke-interface {p0}, Ljava/lang/CharSequence;->length()I
move-result v0
sub-int/2addr v0, p1
if-eqz v0, :cond_5
.line 123
invoke-interface {p0, p1}, Ljava/lang/CharSequence;->charAt(I)C
move-result v1
const/4 v2, 0x0
const/4 v3, 0x2
if-lt v0, v3, :cond_0
add-int/lit8 v4, p1, 0x1
.line 124
invoke-interface {p0, v4}, Ljava/lang/CharSequence;->charAt(I)C
move-result v4
goto :goto_0
:cond_0
move v4, v2
:goto_0
const/4 v5, 0x3
if-lt v0, v5, :cond_1
add-int/lit8 v6, p1, 0x2
.line 125
invoke-interface {p0, v6}, Ljava/lang/CharSequence;->charAt(I)C
move-result v6
goto :goto_1
:cond_1
move v6, v2
:goto_1
const/4 v7, 0x4
if-lt v0, v7, :cond_2
add-int/2addr p1, v5
.line 126
invoke-interface {p0, p1}, Ljava/lang/CharSequence;->charAt(I)C
move-result v2
:cond_2
shl-int/lit8 p0, v1, 0x12
shl-int/lit8 p1, v4, 0xc
add-int/2addr p0, p1
shl-int/lit8 p1, v6, 0x6
add-int/2addr p0, p1
add-int/2addr p0, v2
shr-int/lit8 p1, p0, 0x10
and-int/lit16 p1, p1, 0xff
int-to-char p1, p1
shr-int/lit8 v1, p0, 0x8
and-int/lit16 v1, v1, 0xff
int-to-char v1, v1
and-int/lit16 p0, p0, 0xff
int-to-char p0, p0
.line 132
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2, v5}, Ljava/lang/StringBuilder;-><init>(I)V
.line 133
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
if-lt v0, v3, :cond_3
.line 135
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
:cond_3
if-lt v0, v5, :cond_4
.line 138
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 140
:cond_4
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.line 121
:cond_5
new-instance p0, Ljava/lang/IllegalStateException;
const-string p1, "StringBuilder must not be empty"
invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
.end method
.method public static handleEOD(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/CharSequence;)V
.locals 7
const/4 v0, 0x0
.line 60
:try_start_0
invoke-interface {p1}, Ljava/lang/CharSequence;->length()I
move-result v1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
if-nez v1, :cond_0
.line 104
invoke-virtual {p0, v0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
return-void
:cond_0
const/4 v2, 0x2
const/4 v3, 0x1
if-ne v1, v3, :cond_2
.line 66
:try_start_1
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->updateSymbolInfo()V
.line 67
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getSymbolInfo()Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
move-result-object v4
invoke-virtual {v4}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getDataCapacity()I
move-result v4
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCodewordCount()I
move-result v5
sub-int/2addr v4, v5
.line 68
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getRemainingCharacters()I
move-result v5
if-le v5, v4, :cond_1
.line 71
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCodewordCount()I
move-result v4
add-int/2addr v4, v3
invoke-virtual {p0, v4}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->updateSymbolInfo(I)V
.line 72
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getSymbolInfo()Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
move-result-object v4
invoke-virtual {v4}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getDataCapacity()I
move-result v4
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCodewordCount()I
move-result v6
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
sub-int/2addr v4, v6
goto :goto_0
:catchall_0
move-exception p1
goto :goto_4
:cond_1
:goto_0
if-gt v5, v4, :cond_2
if-gt v4, v2, :cond_2
.line 104
invoke-virtual {p0, v0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
return-void
:cond_2
const/4 v4, 0x4
if-gt v1, v4, :cond_6
sub-int/2addr v1, v3
.line 83
:try_start_2
invoke-static {p1, v0}, Lcom/google/zxing/datamatrix/encoder/EdifactEncoder;->encodeToCodewords(Ljava/lang/CharSequence;I)Ljava/lang/String;
move-result-object p1
.line 84
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->hasMoreCharacters()Z
move-result v4
xor-int/2addr v4, v3
if-eqz v4, :cond_3
if-gt v1, v2, :cond_3
goto :goto_1
:cond_3
move v3, v0
:goto_1
if-gt v1, v2, :cond_4
.line 88
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCodewordCount()I
move-result v2
add-int/2addr v2, v1
invoke-virtual {p0, v2}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->updateSymbolInfo(I)V
.line 89
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getSymbolInfo()Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
move-result-object v2
invoke-virtual {v2}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getDataCapacity()I
move-result v2
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCodewordCount()I
move-result v4
sub-int/2addr v2, v4
const/4 v4, 0x3
if-lt v2, v4, :cond_4
.line 92
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCodewordCount()I
move-result v1
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v2
add-int/2addr v1, v2
invoke-virtual {p0, v1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->updateSymbolInfo(I)V
goto :goto_2
:cond_4
if-eqz v3, :cond_5
.line 98
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->resetSymbolInfo()V
.line 99
iget p1, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
sub-int/2addr p1, v1
iput p1, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
goto :goto_3
.line 101
:cond_5
:goto_2
invoke-virtual {p0, p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodewords(Ljava/lang/String;)V
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_0
.line 104
:goto_3
invoke-virtual {p0, v0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
return-void
.line 80
:cond_6
:try_start_3
new-instance p1, Ljava/lang/IllegalStateException;
const-string v1, "Count must not exceed 4"
invoke-direct {p1, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_0
.line 104
:goto_4
invoke-virtual {p0, v0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
.line 105
throw p1
.end method
# virtual methods
.method public encode(Lcom/google/zxing/datamatrix/encoder/EncoderContext;)V
.locals 5
.line 29
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
.line 30
:cond_0
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->hasMoreCharacters()Z
move-result v1
if-eqz v1, :cond_1
.line 31
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCurrentChar()C
move-result v1
.line 32
invoke-static {v1, v0}, Lcom/google/zxing/datamatrix/encoder/EdifactEncoder;->encodeChar(CLjava/lang/StringBuilder;)V
.line 33
iget v1, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
add-int/lit8 v1, v1, 0x1
iput v1, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
.line 35
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
move-result v1
const/4 v2, 0x4
if-lt v1, v2, :cond_0
const/4 v1, 0x0
.line 37
invoke-static {v0, v1}, Lcom/google/zxing/datamatrix/encoder/EdifactEncoder;->encodeToCodewords(Ljava/lang/CharSequence;I)Ljava/lang/String;
move-result-object v3
invoke-virtual {p1, v3}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodewords(Ljava/lang/String;)V
.line 38
invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->delete(II)Ljava/lang/StringBuilder;
.line 40
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getMessage()Ljava/lang/String;
move-result-object v2
iget v3, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EdifactEncoder;->getEncodingMode()I
move-result v4
invoke-static {v2, v3, v4}, Lcom/google/zxing/datamatrix/encoder/HighLevelEncoder;->lookAheadTest(Ljava/lang/CharSequence;II)I
move-result v2
.line 41
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EdifactEncoder;->getEncodingMode()I
move-result v3
if-eq v2, v3, :cond_0
.line 43
invoke-virtual {p1, v1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
:cond_1
const/16 v1, 0x1f
.line 48
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 49
invoke-static {p1, v0}, Lcom/google/zxing/datamatrix/encoder/EdifactEncoder;->handleEOD(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/CharSequence;)V
return-void
.end method
.method public getEncodingMode()I
.locals 1
const/4 v0, 0x4
return v0
.end method

View File

@@ -0,0 +1,8 @@
.class public interface abstract Lcom/google/zxing/datamatrix/encoder/Encoder;
.super Ljava/lang/Object;
.source "SourceFile"
# virtual methods
.method public abstract encode(Lcom/google/zxing/datamatrix/encoder/EncoderContext;)V
.end method

View File

@@ -0,0 +1,352 @@
.class public final Lcom/google/zxing/datamatrix/encoder/EncoderContext;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field public final codewords:Ljava/lang/StringBuilder;
.field public final msg:Ljava/lang/String;
.field public newEncoding:I
.field public pos:I
.field public shape:Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
.field public skipAtEnd:I
.field public symbolInfo:Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
# direct methods
.method public constructor <init>(Ljava/lang/String;)V
.locals 7
.line 35
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 37
sget-object v0, Ljava/nio/charset/StandardCharsets;->ISO_8859_1:Ljava/nio/charset/Charset;
invoke-virtual {p1, v0}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B
move-result-object v0
.line 38
new-instance v1, Ljava/lang/StringBuilder;
array-length v2, v0
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(I)V
.line 39
array-length v2, v0
const/4 v3, 0x0
:goto_0
if-ge v3, v2, :cond_2
.line 40
aget-byte v4, v0, v3
and-int/lit16 v4, v4, 0xff
int-to-char v4, v4
const/16 v5, 0x3f
if-ne v4, v5, :cond_1
.line 41
invoke-virtual {p1, v3}, Ljava/lang/String;->charAt(I)C
move-result v6
if-ne v6, v5, :cond_0
goto :goto_1
.line 42
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Message contains characters outside ISO-8859-1 encoding."
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 44
:cond_1
:goto_1
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 v3, v3, 0x1
goto :goto_0
.line 46
:cond_2
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
iput-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->msg:Ljava/lang/String;
.line 47
sget-object v0, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;->FORCE_NONE:Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
iput-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->shape:Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
.line 48
new-instance v0, Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result p1
invoke-direct {v0, p1}, Ljava/lang/StringBuilder;-><init>(I)V
iput-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->codewords:Ljava/lang/StringBuilder;
const/4 p1, -0x1
iput p1, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->newEncoding:I
return-void
.end method
# virtual methods
.method public getCodewordCount()I
.locals 1
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->codewords:Ljava/lang/StringBuilder;
.line 90
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
move-result v0
return v0
.end method
.method public getCodewords()Ljava/lang/StringBuilder;
.locals 1
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->codewords:Ljava/lang/StringBuilder;
return-object v0
.end method
.method public getCurrentChar()C
.locals 2
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->msg:Ljava/lang/String;
iget v1, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
.line 70
invoke-virtual {v0, v1}, Ljava/lang/String;->charAt(I)C
move-result v0
return v0
.end method
.method public getMessage()Ljava/lang/String;
.locals 1
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->msg:Ljava/lang/String;
return-object v0
.end method
.method public getNewEncoding()I
.locals 1
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->newEncoding:I
return v0
.end method
.method public getRemainingCharacters()I
.locals 2
.line 114
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getTotalMessageCharCount()I
move-result v0
iget v1, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
sub-int/2addr v0, v1
return v0
.end method
.method public getSymbolInfo()Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
.locals 1
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->symbolInfo:Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
return-object v0
.end method
.method public final getTotalMessageCharCount()I
.locals 2
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->msg:Ljava/lang/String;
.line 110
invoke-virtual {v0}, Ljava/lang/String;->length()I
move-result v0
iget v1, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->skipAtEnd:I
sub-int/2addr v0, v1
return v0
.end method
.method public hasMoreCharacters()Z
.locals 2
iget v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
.line 106
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getTotalMessageCharCount()I
move-result v1
if-ge v0, v1, :cond_0
const/4 v0, 0x1
return v0
:cond_0
const/4 v0, 0x0
return v0
.end method
.method public resetEncoderSignal()V
.locals 1
const/4 v0, -0x1
iput v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->newEncoding:I
return-void
.end method
.method public resetSymbolInfo()V
.locals 1
const/4 v0, 0x0
iput-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->symbolInfo:Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
return-void
.end method
.method public setSizeConstraints(Lcom/google/zxing/Dimension;Lcom/google/zxing/Dimension;)V
.locals 0
return-void
.end method
.method public setSkipAtEnd(I)V
.locals 0
iput p1, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->skipAtEnd:I
return-void
.end method
.method public setSymbolShape(Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;)V
.locals 0
iput-object p1, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->shape:Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
return-void
.end method
.method public signalEncoderChange(I)V
.locals 0
iput p1, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->newEncoding:I
return-void
.end method
.method public updateSymbolInfo()V
.locals 1
.line 122
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCodewordCount()I
move-result v0
invoke-virtual {p0, v0}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->updateSymbolInfo(I)V
return-void
.end method
.method public updateSymbolInfo(I)V
.locals 3
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->symbolInfo:Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
if-eqz v0, :cond_0
.line 126
invoke-virtual {v0}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getDataCapacity()I
move-result v0
if-le p1, v0, :cond_1
:cond_0
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->shape:Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
const/4 v1, 0x1
const/4 v2, 0x0
.line 127
invoke-static {p1, v0, v2, v2, v1}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->lookup(ILcom/google/zxing/datamatrix/encoder/SymbolShapeHint;Lcom/google/zxing/Dimension;Lcom/google/zxing/Dimension;Z)Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
move-result-object p1
iput-object p1, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->symbolInfo:Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
:cond_1
return-void
.end method
.method public writeCodeword(C)V
.locals 1
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->codewords:Ljava/lang/StringBuilder;
.line 86
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return-void
.end method
.method public writeCodewords(Ljava/lang/String;)V
.locals 1
iget-object v0, p0, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->codewords:Ljava/lang/StringBuilder;
.line 82
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
return-void
.end method

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,104 @@
.class public final enum Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
.super Ljava/lang/Enum;
.source "SourceFile"
# static fields
.field private static final synthetic $VALUES:[Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
.field public static final enum FORCE_NONE:Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
.field public static final enum FORCE_RECTANGLE:Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
.field public static final enum FORCE_SQUARE:Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
# direct methods
.method static constructor <clinit>()V
.locals 5
.line 25
new-instance v0, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
const-string v1, "FORCE_NONE"
const/4 v2, 0x0
invoke-direct {v0, v1, v2}, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;->FORCE_NONE:Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
.line 26
new-instance v1, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
const-string v2, "FORCE_SQUARE"
const/4 v3, 0x1
invoke-direct {v1, v2, v3}, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;-><init>(Ljava/lang/String;I)V
sput-object v1, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;->FORCE_SQUARE:Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
.line 27
new-instance v2, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
const-string v3, "FORCE_RECTANGLE"
const/4 v4, 0x2
invoke-direct {v2, v3, v4}, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;-><init>(Ljava/lang/String;I)V
sput-object v2, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;->FORCE_RECTANGLE:Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
filled-new-array {v0, v1, v2}, [Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
move-result-object v0
sput-object v0, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;->$VALUES:[Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
.line 23
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
.locals 1
const-class v0, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
.line 23
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
return-object p0
.end method
.method public static values()[Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
.locals 1
sget-object v0, Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;->$VALUES:[Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
.line 23
invoke-virtual {v0}, [Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/google/zxing/datamatrix/encoder/SymbolShapeHint;
return-object v0
.end method

View File

@@ -0,0 +1,233 @@
.class public final Lcom/google/zxing/datamatrix/encoder/TextEncoder;
.super Lcom/google/zxing/datamatrix/encoder/C40Encoder;
.source "SourceFile"
# direct methods
.method public constructor <init>()V
.locals 0
.line 19
invoke-direct {p0}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;-><init>()V
return-void
.end method
# virtual methods
.method public encodeChar(CLjava/lang/StringBuilder;)I
.locals 4
const/4 v0, 0x1
const/16 v1, 0x20
if-ne p1, v1, :cond_0
const/4 p1, 0x3
.line 29
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v0
:cond_0
const/16 v2, 0x30
if-lt p1, v2, :cond_1
const/16 v2, 0x39
if-gt p1, v2, :cond_1
add-int/lit8 p1, p1, -0x2c
int-to-char p1, p1
.line 33
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v0
:cond_1
const/16 v2, 0x61
if-lt p1, v2, :cond_2
const/16 v2, 0x7a
if-gt p1, v2, :cond_2
add-int/lit8 p1, p1, -0x53
int-to-char p1, p1
.line 37
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v0
:cond_2
const/4 v2, 0x2
if-ge p1, v1, :cond_3
const/4 v0, 0x0
.line 41
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 42
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v2
:cond_3
const/16 v1, 0x21
if-lt p1, v1, :cond_4
const/16 v3, 0x2f
if-gt p1, v3, :cond_4
.line 46
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
sub-int/2addr p1, v1
int-to-char p1, p1
.line 47
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v2
:cond_4
const/16 v1, 0x3a
const/16 v3, 0x40
if-lt p1, v1, :cond_5
if-gt p1, v3, :cond_5
.line 51
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 p1, p1, -0x2b
int-to-char p1, p1
.line 52
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v2
:cond_5
const/16 v1, 0x5b
if-lt p1, v1, :cond_6
const/16 v1, 0x5f
if-gt p1, v1, :cond_6
.line 56
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 p1, p1, -0x45
int-to-char p1, p1
.line 57
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v2
:cond_6
const/16 v0, 0x60
if-ne p1, v0, :cond_7
.line 61
invoke-virtual {p2, v2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
sub-int/2addr p1, v0
int-to-char p1, p1
.line 62
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v2
:cond_7
const/16 v1, 0x41
if-lt p1, v1, :cond_8
const/16 v1, 0x5a
if-gt p1, v1, :cond_8
.line 66
invoke-virtual {p2, v2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
sub-int/2addr p1, v3
int-to-char p1, p1
.line 67
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v2
:cond_8
const/16 v1, 0x7b
if-lt p1, v1, :cond_9
const/16 v1, 0x7f
if-gt p1, v1, :cond_9
.line 71
invoke-virtual {p2, v2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
sub-int/2addr p1, v0
int-to-char p1, p1
.line 72
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return v2
:cond_9
const-string v0, "\u0001\u001e"
.line 75
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 p1, p1, -0x80
int-to-char p1, p1
.line 77
invoke-virtual {p0, p1, p2}, Lcom/google/zxing/datamatrix/encoder/TextEncoder;->encodeChar(CLjava/lang/StringBuilder;)I
move-result p1
add-int/2addr p1, v2
return p1
.end method
.method public getEncodingMode()I
.locals 1
const/4 v0, 0x2
return v0
.end method

View File

@@ -0,0 +1,270 @@
.class public final Lcom/google/zxing/datamatrix/encoder/X12Encoder;
.super Lcom/google/zxing/datamatrix/encoder/C40Encoder;
.source "SourceFile"
# direct methods
.method public constructor <init>()V
.locals 0
.line 19
invoke-direct {p0}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;-><init>()V
return-void
.end method
# virtual methods
.method public encode(Lcom/google/zxing/datamatrix/encoder/EncoderContext;)V
.locals 4
.line 29
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
.line 30
:cond_0
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->hasMoreCharacters()Z
move-result v1
if-eqz v1, :cond_1
.line 31
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCurrentChar()C
move-result v1
.line 32
iget v2, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
add-int/lit8 v2, v2, 0x1
iput v2, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
.line 34
invoke-virtual {p0, v1, v0}, Lcom/google/zxing/datamatrix/encoder/X12Encoder;->encodeChar(CLjava/lang/StringBuilder;)I
.line 36
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
move-result v1
.line 37
rem-int/lit8 v1, v1, 0x3
if-nez v1, :cond_0
.line 38
invoke-static {p1, v0}, Lcom/google/zxing/datamatrix/encoder/C40Encoder;->writeNextTriplet(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/StringBuilder;)V
.line 40
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getMessage()Ljava/lang/String;
move-result-object v1
iget v2, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/X12Encoder;->getEncodingMode()I
move-result v3
invoke-static {v1, v2, v3}, Lcom/google/zxing/datamatrix/encoder/HighLevelEncoder;->lookAheadTest(Ljava/lang/CharSequence;II)I
move-result v1
.line 41
invoke-virtual {p0}, Lcom/google/zxing/datamatrix/encoder/X12Encoder;->getEncodingMode()I
move-result v2
if-eq v1, v2, :cond_0
const/4 v1, 0x0
.line 43
invoke-virtual {p1, v1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
.line 48
:cond_1
invoke-virtual {p0, p1, v0}, Lcom/google/zxing/datamatrix/encoder/X12Encoder;->handleEOD(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/StringBuilder;)V
return-void
.end method
.method public encodeChar(CLjava/lang/StringBuilder;)I
.locals 2
const/16 v0, 0xd
const/4 v1, 0x1
if-eq p1, v0, :cond_5
const/16 v0, 0x20
if-eq p1, v0, :cond_4
const/16 v0, 0x2a
if-eq p1, v0, :cond_3
const/16 v0, 0x3e
if-eq p1, v0, :cond_2
const/16 v0, 0x30
if-lt p1, v0, :cond_0
const/16 v0, 0x39
if-gt p1, v0, :cond_0
add-int/lit8 p1, p1, -0x2c
int-to-char p1, p1
.line 68
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_0
:cond_0
const/16 v0, 0x41
if-lt p1, v0, :cond_1
const/16 v0, 0x5a
if-gt p1, v0, :cond_1
add-int/lit8 p1, p1, -0x33
int-to-char p1, p1
.line 70
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_0
.line 72
:cond_1
invoke-static {p1}, Lcom/google/zxing/datamatrix/encoder/HighLevelEncoder;->illegalCharacter(C)V
goto :goto_0
:cond_2
const/4 p1, 0x2
.line 61
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_0
.line 58
:cond_3
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_0
:cond_4
const/4 p1, 0x3
.line 64
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_0
:cond_5
const/4 p1, 0x0
.line 55
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
:goto_0
return v1
.end method
.method public getEncodingMode()I
.locals 1
const/4 v0, 0x3
return v0
.end method
.method public handleEOD(Lcom/google/zxing/datamatrix/encoder/EncoderContext;Ljava/lang/StringBuilder;)V
.locals 2
.line 81
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->updateSymbolInfo()V
.line 82
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getSymbolInfo()Lcom/google/zxing/datamatrix/encoder/SymbolInfo;
move-result-object v0
invoke-virtual {v0}, Lcom/google/zxing/datamatrix/encoder/SymbolInfo;->getDataCapacity()I
move-result v0
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getCodewordCount()I
move-result v1
sub-int/2addr v0, v1
.line 83
invoke-virtual {p2}, Ljava/lang/StringBuilder;->length()I
move-result p2
.line 84
iget v1, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
sub-int/2addr v1, p2
iput v1, p1, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->pos:I
.line 85
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getRemainingCharacters()I
move-result p2
const/4 v1, 0x1
if-gt p2, v1, :cond_0
if-gt v0, v1, :cond_0
.line 86
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getRemainingCharacters()I
move-result p2
if-eq p2, v0, :cond_1
:cond_0
const/16 p2, 0xfe
.line 87
invoke-virtual {p1, p2}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->writeCodeword(C)V
.line 89
:cond_1
invoke-virtual {p1}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->getNewEncoding()I
move-result p2
if-gez p2, :cond_2
const/4 p2, 0x0
.line 90
invoke-virtual {p1, p2}, Lcom/google/zxing/datamatrix/encoder/EncoderContext;->signalEncoderChange(I)V
:cond_2
return-void
.end method

View File

@@ -0,0 +1,108 @@
.class public abstract Lcom/google/zxing/oned/CodaBarReader;
.super Lcom/google/zxing/oned/OneDReader;
.source "SourceFile"
# static fields
.field public static final ALPHABET:[C
.field public static final CHARACTER_ENCODINGS:[I
.field public static final STARTEND_ENCODING:[C
# direct methods
.method static constructor <clinit>()V
.locals 1
const-string v0, "0123456789-$:/.+ABCD"
.line 44
invoke-virtual {v0}, Ljava/lang/String;->toCharArray()[C
move-result-object v0
sput-object v0, Lcom/google/zxing/oned/CodaBarReader;->ALPHABET:[C
const/16 v0, 0x14
new-array v0, v0, [I
fill-array-data v0, :array_0
sput-object v0, Lcom/google/zxing/oned/CodaBarReader;->CHARACTER_ENCODINGS:[I
const/4 v0, 0x4
new-array v0, v0, [C
fill-array-data v0, :array_1
sput-object v0, Lcom/google/zxing/oned/CodaBarReader;->STARTEND_ENCODING:[C
return-void
:array_0
.array-data 4
0x3
0x6
0x9
0x60
0x12
0x42
0x21
0x24
0x30
0x48
0xc
0x18
0x45
0x51
0x54
0x15
0x1a
0x29
0xb
0xe
.end array-data
:array_1
.array-data 2
0x41s
0x42s
0x43s
0x44s
.end array-data
.end method
.method public static arrayContains([CC)Z
.locals 4
const/4 v0, 0x0
if-eqz p0, :cond_1
.line 283
array-length v1, p0
move v2, v0
:goto_0
if-ge v2, v1, :cond_1
aget-char v3, p0, v2
if-ne v3, p1, :cond_0
const/4 p0, 0x1
return p0
:cond_0
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_1
return v0
.end method

View File

@@ -0,0 +1,520 @@
.class public final Lcom/google/zxing/oned/CodaBarWriter;
.super Lcom/google/zxing/oned/OneDimensionalCodeWriter;
.source "SourceFile"
# static fields
.field public static final ALT_START_END_CHARS:[C
.field public static final CHARS_WHICH_ARE_TEN_LENGTH_EACH_AFTER_DECODED:[C
.field public static final DEFAULT_GUARD:C
.field public static final START_END_CHARS:[C
# direct methods
.method static constructor <clinit>()V
.locals 3
const/4 v0, 0x4
new-array v1, v0, [C
fill-array-data v1, :array_0
sput-object v1, Lcom/google/zxing/oned/CodaBarWriter;->START_END_CHARS:[C
new-array v2, v0, [C
fill-array-data v2, :array_1
sput-object v2, Lcom/google/zxing/oned/CodaBarWriter;->ALT_START_END_CHARS:[C
new-array v0, v0, [C
fill-array-data v0, :array_2
sput-object v0, Lcom/google/zxing/oned/CodaBarWriter;->CHARS_WHICH_ARE_TEN_LENGTH_EACH_AFTER_DECODED:[C
const/4 v0, 0x0
aget-char v0, v1, v0
sput-char v0, Lcom/google/zxing/oned/CodaBarWriter;->DEFAULT_GUARD:C
return-void
:array_0
.array-data 2
0x41s
0x42s
0x43s
0x44s
.end array-data
:array_1
.array-data 2
0x54s
0x4es
0x2as
0x45s
.end array-data
:array_2
.array-data 2
0x2fs
0x3as
0x2bs
0x2es
.end array-data
.end method
.method public constructor <init>()V
.locals 0
.line 24
invoke-direct {p0}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;-><init>()V
return-void
.end method
# virtual methods
.method public encode(Ljava/lang/String;)[Z
.locals 10
.line 34
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
const/4 v1, 0x2
const/4 v2, 0x0
const/4 v3, 0x1
if-ge v0, v1, :cond_0
.line 36
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
sget-char v1, Lcom/google/zxing/oned/CodaBarWriter;->DEFAULT_GUARD:C
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
goto :goto_0
.line 39
:cond_0
invoke-virtual {p1, v2}, Ljava/lang/String;->charAt(I)C
move-result v0
invoke-static {v0}, Ljava/lang/Character;->toUpperCase(C)C
move-result v0
.line 40
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v1
sub-int/2addr v1, v3
invoke-virtual {p1, v1}, Ljava/lang/String;->charAt(I)C
move-result v1
invoke-static {v1}, Ljava/lang/Character;->toUpperCase(C)C
move-result v1
sget-object v4, Lcom/google/zxing/oned/CodaBarWriter;->START_END_CHARS:[C
.line 41
invoke-static {v4, v0}, Lcom/google/zxing/oned/CodaBarReader;->arrayContains([CC)Z
move-result v5
.line 42
invoke-static {v4, v1}, Lcom/google/zxing/oned/CodaBarReader;->arrayContains([CC)Z
move-result v4
sget-object v6, Lcom/google/zxing/oned/CodaBarWriter;->ALT_START_END_CHARS:[C
.line 43
invoke-static {v6, v0}, Lcom/google/zxing/oned/CodaBarReader;->arrayContains([CC)Z
move-result v0
.line 44
invoke-static {v6, v1}, Lcom/google/zxing/oned/CodaBarReader;->arrayContains([CC)Z
move-result v1
const-string v6, "Invalid start/end guards: "
if-eqz v5, :cond_2
if-eqz v4, :cond_1
goto :goto_0
.line 47
:cond_1
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-virtual {v6, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_2
if-eqz v0, :cond_4
if-eqz v1, :cond_3
goto :goto_0
.line 52
:cond_3
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-virtual {v6, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_4
if-nez v4, :cond_16
if-nez v1, :cond_16
.line 61
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
sget-char v1, Lcom/google/zxing/oned/CodaBarWriter;->DEFAULT_GUARD:C
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
:goto_0
const/16 v0, 0x14
move v1, v3
.line 67
:goto_1
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v4
sub-int/2addr v4, v3
if-ge v1, v4, :cond_8
.line 68
invoke-virtual {p1, v1}, Ljava/lang/String;->charAt(I)C
move-result v4
invoke-static {v4}, Ljava/lang/Character;->isDigit(C)Z
move-result v4
if-nez v4, :cond_7
invoke-virtual {p1, v1}, Ljava/lang/String;->charAt(I)C
move-result v4
const/16 v5, 0x2d
if-eq v4, v5, :cond_7
invoke-virtual {p1, v1}, Ljava/lang/String;->charAt(I)C
move-result v4
const/16 v5, 0x24
if-ne v4, v5, :cond_5
goto :goto_2
:cond_5
sget-object v4, Lcom/google/zxing/oned/CodaBarWriter;->CHARS_WHICH_ARE_TEN_LENGTH_EACH_AFTER_DECODED:[C
.line 70
invoke-virtual {p1, v1}, Ljava/lang/String;->charAt(I)C
move-result v5
invoke-static {v4, v5}, Lcom/google/zxing/oned/CodaBarReader;->arrayContains([CC)Z
move-result v4
if-eqz v4, :cond_6
add-int/lit8 v0, v0, 0xa
goto :goto_3
.line 73
:cond_6
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "Cannot encode : \'"
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p1, v1}, Ljava/lang/String;->charAt(I)C
move-result p1
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
const/16 p1, 0x27
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_7
:goto_2
add-int/lit8 v0, v0, 0x9
:goto_3
add-int/lit8 v1, v1, 0x1
goto :goto_1
.line 77
:cond_8
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v1
sub-int/2addr v1, v3
add-int/2addr v0, v1
.line 79
new-array v0, v0, [Z
move v1, v2
move v4, v1
.line 81
:goto_4
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v5
if-ge v1, v5, :cond_15
.line 82
invoke-virtual {p1, v1}, Ljava/lang/String;->charAt(I)C
move-result v5
invoke-static {v5}, Ljava/lang/Character;->toUpperCase(C)C
move-result v5
if-eqz v1, :cond_9
.line 83
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v6
sub-int/2addr v6, v3
if-ne v1, v6, :cond_e
:cond_9
const/16 v6, 0x2a
if-eq v5, v6, :cond_d
const/16 v6, 0x45
if-eq v5, v6, :cond_c
const/16 v6, 0x4e
if-eq v5, v6, :cond_b
const/16 v6, 0x54
if-eq v5, v6, :cond_a
goto :goto_5
:cond_a
const/16 v5, 0x41
goto :goto_5
:cond_b
const/16 v5, 0x42
goto :goto_5
:cond_c
const/16 v5, 0x44
goto :goto_5
:cond_d
const/16 v5, 0x43
:cond_e
:goto_5
move v6, v2
.line 101
:goto_6
sget-object v7, Lcom/google/zxing/oned/CodaBarReader;->ALPHABET:[C
array-length v8, v7
if-ge v6, v8, :cond_10
.line 103
aget-char v7, v7, v6
if-ne v5, v7, :cond_f
.line 104
sget-object v5, Lcom/google/zxing/oned/CodaBarReader;->CHARACTER_ENCODINGS:[I
aget v5, v5, v6
goto :goto_7
:cond_f
add-int/lit8 v6, v6, 0x1
goto :goto_6
:cond_10
move v5, v2
:goto_7
move v6, v2
move v8, v6
move v7, v3
:goto_8
const/4 v9, 0x7
if-ge v6, v9, :cond_13
.line 112
aput-boolean v7, v0, v4
add-int/lit8 v4, v4, 0x1
rsub-int/lit8 v9, v6, 0x6
shr-int v9, v5, v9
and-int/2addr v9, v3
if-eqz v9, :cond_12
if-ne v8, v3, :cond_11
goto :goto_9
:cond_11
add-int/lit8 v8, v8, 0x1
goto :goto_8
:cond_12
:goto_9
xor-int/lit8 v7, v7, 0x1
add-int/lit8 v6, v6, 0x1
move v8, v2
goto :goto_8
.line 122
:cond_13
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v5
sub-int/2addr v5, v3
if-ge v1, v5, :cond_14
.line 123
aput-boolean v2, v0, v4
add-int/lit8 v4, v4, 0x1
:cond_14
add-int/lit8 v1, v1, 0x1
goto :goto_4
:cond_15
return-object v0
.line 58
:cond_16
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-virtual {v6, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.end method

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,128 @@
.class public final enum Lcom/google/zxing/oned/Code128Writer$CType;
.super Ljava/lang/Enum;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/zxing/oned/Code128Writer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x4019
name = "CType"
.end annotation
# static fields
.field private static final synthetic $VALUES:[Lcom/google/zxing/oned/Code128Writer$CType;
.field public static final enum FNC_1:Lcom/google/zxing/oned/Code128Writer$CType;
.field public static final enum ONE_DIGIT:Lcom/google/zxing/oned/Code128Writer$CType;
.field public static final enum TWO_DIGITS:Lcom/google/zxing/oned/Code128Writer$CType;
.field public static final enum UNCODABLE:Lcom/google/zxing/oned/Code128Writer$CType;
# direct methods
.method static constructor <clinit>()V
.locals 6
.line 57
new-instance v0, Lcom/google/zxing/oned/Code128Writer$CType;
const-string v1, "UNCODABLE"
const/4 v2, 0x0
invoke-direct {v0, v1, v2}, Lcom/google/zxing/oned/Code128Writer$CType;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/google/zxing/oned/Code128Writer$CType;->UNCODABLE:Lcom/google/zxing/oned/Code128Writer$CType;
.line 58
new-instance v1, Lcom/google/zxing/oned/Code128Writer$CType;
const-string v2, "ONE_DIGIT"
const/4 v3, 0x1
invoke-direct {v1, v2, v3}, Lcom/google/zxing/oned/Code128Writer$CType;-><init>(Ljava/lang/String;I)V
sput-object v1, Lcom/google/zxing/oned/Code128Writer$CType;->ONE_DIGIT:Lcom/google/zxing/oned/Code128Writer$CType;
.line 59
new-instance v2, Lcom/google/zxing/oned/Code128Writer$CType;
const-string v3, "TWO_DIGITS"
const/4 v4, 0x2
invoke-direct {v2, v3, v4}, Lcom/google/zxing/oned/Code128Writer$CType;-><init>(Ljava/lang/String;I)V
sput-object v2, Lcom/google/zxing/oned/Code128Writer$CType;->TWO_DIGITS:Lcom/google/zxing/oned/Code128Writer$CType;
.line 60
new-instance v3, Lcom/google/zxing/oned/Code128Writer$CType;
const-string v4, "FNC_1"
const/4 v5, 0x3
invoke-direct {v3, v4, v5}, Lcom/google/zxing/oned/Code128Writer$CType;-><init>(Ljava/lang/String;I)V
sput-object v3, Lcom/google/zxing/oned/Code128Writer$CType;->FNC_1:Lcom/google/zxing/oned/Code128Writer$CType;
filled-new-array {v0, v1, v2, v3}, [Lcom/google/zxing/oned/Code128Writer$CType;
move-result-object v0
sput-object v0, Lcom/google/zxing/oned/Code128Writer$CType;->$VALUES:[Lcom/google/zxing/oned/Code128Writer$CType;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
.line 56
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/google/zxing/oned/Code128Writer$CType;
.locals 1
const-class v0, Lcom/google/zxing/oned/Code128Writer$CType;
.line 56
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/google/zxing/oned/Code128Writer$CType;
return-object p0
.end method
.method public static values()[Lcom/google/zxing/oned/Code128Writer$CType;
.locals 1
sget-object v0, Lcom/google/zxing/oned/Code128Writer$CType;->$VALUES:[Lcom/google/zxing/oned/Code128Writer$CType;
.line 56
invoke-virtual {v0}, [Lcom/google/zxing/oned/Code128Writer$CType;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/google/zxing/oned/Code128Writer$CType;
return-object v0
.end method

View File

@@ -0,0 +1,638 @@
.class public final Lcom/google/zxing/oned/Code128Writer;
.super Lcom/google/zxing/oned/OneDimensionalCodeWriter;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/google/zxing/oned/Code128Writer$CType;
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
.line 33
invoke-direct {p0}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;-><init>()V
return-void
.end method
.method public static chooseCode(Ljava/lang/CharSequence;II)I
.locals 5
.line 234
invoke-static {p0, p1}, Lcom/google/zxing/oned/Code128Writer;->findCType(Ljava/lang/CharSequence;I)Lcom/google/zxing/oned/Code128Writer$CType;
move-result-object v0
.line 235
sget-object v1, Lcom/google/zxing/oned/Code128Writer$CType;->ONE_DIGIT:Lcom/google/zxing/oned/Code128Writer$CType;
const/16 v2, 0x64
if-ne v0, v1, :cond_0
return v2
.line 238
:cond_0
sget-object v3, Lcom/google/zxing/oned/Code128Writer$CType;->UNCODABLE:Lcom/google/zxing/oned/Code128Writer$CType;
if-ne v0, v3, :cond_3
.line 239
invoke-interface {p0}, Ljava/lang/CharSequence;->length()I
move-result v0
if-ge p1, v0, :cond_2
.line 240
invoke-interface {p0, p1}, Ljava/lang/CharSequence;->charAt(I)C
move-result p0
const/16 p1, 0x20
const/16 v0, 0x65
if-lt p0, p1, :cond_1
if-ne p2, v0, :cond_2
const/16 p1, 0x60
if-ge p0, p1, :cond_2
:cond_1
return v0
:cond_2
return v2
:cond_3
const/16 v4, 0x63
if-ne p2, v4, :cond_4
return v4
:cond_4
if-ne p2, v2, :cond_c
.line 252
sget-object p2, Lcom/google/zxing/oned/Code128Writer$CType;->FNC_1:Lcom/google/zxing/oned/Code128Writer$CType;
if-ne v0, p2, :cond_5
return v2
:cond_5
add-int/lit8 v0, p1, 0x2
.line 256
invoke-static {p0, v0}, Lcom/google/zxing/oned/Code128Writer;->findCType(Ljava/lang/CharSequence;I)Lcom/google/zxing/oned/Code128Writer$CType;
move-result-object v0
if-eq v0, v3, :cond_b
if-ne v0, v1, :cond_6
goto :goto_1
:cond_6
if-ne v0, p2, :cond_8
add-int/lit8 p1, p1, 0x3
.line 261
invoke-static {p0, p1}, Lcom/google/zxing/oned/Code128Writer;->findCType(Ljava/lang/CharSequence;I)Lcom/google/zxing/oned/Code128Writer$CType;
move-result-object p0
.line 262
sget-object p1, Lcom/google/zxing/oned/Code128Writer$CType;->TWO_DIGITS:Lcom/google/zxing/oned/Code128Writer$CType;
if-ne p0, p1, :cond_7
return v4
:cond_7
return v2
:cond_8
add-int/lit8 p1, p1, 0x4
.line 271
:goto_0
invoke-static {p0, p1}, Lcom/google/zxing/oned/Code128Writer;->findCType(Ljava/lang/CharSequence;I)Lcom/google/zxing/oned/Code128Writer$CType;
move-result-object p2
sget-object v0, Lcom/google/zxing/oned/Code128Writer$CType;->TWO_DIGITS:Lcom/google/zxing/oned/Code128Writer$CType;
if-ne p2, v0, :cond_9
add-int/lit8 p1, p1, 0x2
goto :goto_0
.line 274
:cond_9
sget-object p0, Lcom/google/zxing/oned/Code128Writer$CType;->ONE_DIGIT:Lcom/google/zxing/oned/Code128Writer$CType;
if-ne p2, p0, :cond_a
return v2
:cond_a
return v4
:cond_b
:goto_1
return v2
.line 280
:cond_c
sget-object p2, Lcom/google/zxing/oned/Code128Writer$CType;->FNC_1:Lcom/google/zxing/oned/Code128Writer$CType;
if-ne v0, p2, :cond_d
add-int/lit8 p1, p1, 0x1
.line 281
invoke-static {p0, p1}, Lcom/google/zxing/oned/Code128Writer;->findCType(Ljava/lang/CharSequence;I)Lcom/google/zxing/oned/Code128Writer$CType;
move-result-object v0
.line 283
:cond_d
sget-object p0, Lcom/google/zxing/oned/Code128Writer$CType;->TWO_DIGITS:Lcom/google/zxing/oned/Code128Writer$CType;
if-ne v0, p0, :cond_e
return v4
:cond_e
return v2
.end method
.method public static findCType(Ljava/lang/CharSequence;I)Lcom/google/zxing/oned/Code128Writer$CType;
.locals 4
.line 212
invoke-interface {p0}, Ljava/lang/CharSequence;->length()I
move-result v0
if-lt p1, v0, :cond_0
.line 214
sget-object p0, Lcom/google/zxing/oned/Code128Writer$CType;->UNCODABLE:Lcom/google/zxing/oned/Code128Writer$CType;
return-object p0
.line 216
:cond_0
invoke-interface {p0, p1}, Ljava/lang/CharSequence;->charAt(I)C
move-result v1
const/16 v2, 0xf1
if-ne v1, v2, :cond_1
.line 218
sget-object p0, Lcom/google/zxing/oned/Code128Writer$CType;->FNC_1:Lcom/google/zxing/oned/Code128Writer$CType;
return-object p0
:cond_1
const/16 v2, 0x30
if-lt v1, v2, :cond_6
const/16 v3, 0x39
if-le v1, v3, :cond_2
goto :goto_1
:cond_2
add-int/lit8 p1, p1, 0x1
if-lt p1, v0, :cond_3
.line 224
sget-object p0, Lcom/google/zxing/oned/Code128Writer$CType;->ONE_DIGIT:Lcom/google/zxing/oned/Code128Writer$CType;
return-object p0
.line 226
:cond_3
invoke-interface {p0, p1}, Ljava/lang/CharSequence;->charAt(I)C
move-result p0
if-lt p0, v2, :cond_5
if-le p0, v3, :cond_4
goto :goto_0
.line 230
:cond_4
sget-object p0, Lcom/google/zxing/oned/Code128Writer$CType;->TWO_DIGITS:Lcom/google/zxing/oned/Code128Writer$CType;
return-object p0
.line 228
:cond_5
:goto_0
sget-object p0, Lcom/google/zxing/oned/Code128Writer$CType;->ONE_DIGIT:Lcom/google/zxing/oned/Code128Writer$CType;
return-object p0
.line 221
:cond_6
:goto_1
sget-object p0, Lcom/google/zxing/oned/Code128Writer$CType;->UNCODABLE:Lcom/google/zxing/oned/Code128Writer$CType;
return-object p0
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 1
.line 69
sget-object v0, Lcom/google/zxing/BarcodeFormat;->CODE_128:Lcom/google/zxing/BarcodeFormat;
if-ne p2, v0, :cond_0
.line 72
invoke-super/range {p0 .. p5}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
.line 70
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
const-string p3, "Can only encode CODE_128, but got "
invoke-virtual {p3, p2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public encode(Ljava/lang/String;)[Z
.locals 12
.line 77
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
if-lez v0, :cond_e
const/16 v1, 0x50
if-gt v0, v1, :cond_e
const/4 v1, 0x0
move v2, v1
:goto_0
if-ge v2, v0, :cond_1
.line 85
invoke-virtual {p1, v2}, Ljava/lang/String;->charAt(I)C
move-result v3
packed-switch v3, :pswitch_data_0
const/16 v4, 0x7f
if-gt v3, v4, :cond_0
goto :goto_1
.line 95
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Bad character in input: "
invoke-static {v3}, Ljava/lang/String;->valueOf(C)Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
:goto_1
:pswitch_0
add-int/lit8 v2, v2, 0x1
goto :goto_0
.line 100
:cond_1
new-instance v2, Ljava/util/ArrayList;
invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V
const/4 v3, 0x1
move v4, v1
move v5, v4
move v6, v5
move v7, v3
:cond_2
:goto_2
const/16 v8, 0x67
if-ge v4, v0, :cond_a
.line 108
invoke-static {p1, v4, v6}, Lcom/google/zxing/oned/Code128Writer;->chooseCode(Ljava/lang/CharSequence;II)I
move-result v9
const/16 v10, 0x64
const/16 v11, 0x65
if-ne v9, v6, :cond_6
.line 115
invoke-virtual {p1, v4}, Ljava/lang/String;->charAt(I)C
move-result v8
packed-switch v8, :pswitch_data_1
if-eq v6, v10, :cond_4
if-eq v6, v11, :cond_3
add-int/lit8 v8, v4, 0x2
.line 147
invoke-virtual {p1, v4, v8}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v8
invoke-static {v8}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v10
add-int/lit8 v4, v4, 0x1
goto :goto_3
.line 136
:cond_3
invoke-virtual {p1, v4}, Ljava/lang/String;->charAt(I)C
move-result v8
add-int/lit8 v10, v8, -0x20
if-gez v10, :cond_5
add-int/lit8 v10, v8, 0x40
goto :goto_3
.line 143
:cond_4
invoke-virtual {p1, v4}, Ljava/lang/String;->charAt(I)C
move-result v8
add-int/lit8 v10, v8, -0x20
goto :goto_3
:pswitch_1
if-ne v6, v11, :cond_5
move v10, v11
goto :goto_3
:pswitch_2
const/16 v10, 0x60
goto :goto_3
:pswitch_3
const/16 v10, 0x61
goto :goto_3
:pswitch_4
const/16 v10, 0x66
:cond_5
:goto_3
add-int/2addr v4, v3
goto :goto_5
:cond_6
if-nez v6, :cond_8
if-eq v9, v10, :cond_7
if-eq v9, v11, :cond_9
const/16 v8, 0x69
goto :goto_4
:cond_7
const/16 v8, 0x68
goto :goto_4
:cond_8
move v8, v9
:cond_9
:goto_4
move v10, v8
move v6, v9
.line 177
:goto_5
sget-object v8, Lcom/google/zxing/oned/Code128Reader;->CODE_PATTERNS:[[I
aget-object v8, v8, v10
invoke-interface {v2, v8}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
mul-int/2addr v10, v7
add-int/2addr v5, v10
if-eqz v4, :cond_2
add-int/lit8 v7, v7, 0x1
goto :goto_2
.line 187
:cond_a
rem-int/2addr v5, v8
.line 188
sget-object p1, Lcom/google/zxing/oned/Code128Reader;->CODE_PATTERNS:[[I
aget-object v0, p1, v5
invoke-interface {v2, v0}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
const/16 v0, 0x6a
.line 191
aget-object p1, p1, v0
invoke-interface {v2, p1}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
.line 195
invoke-interface {v2}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
move-result-object p1
move v0, v1
:cond_b
invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
move-result v4
if-eqz v4, :cond_c
invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v4
check-cast v4, [I
.line 196
array-length v5, v4
move v6, v1
:goto_6
if-ge v6, v5, :cond_b
aget v7, v4, v6
add-int/2addr v0, v7
add-int/lit8 v6, v6, 0x1
goto :goto_6
.line 202
:cond_c
new-array p1, v0, [Z
.line 204
invoke-interface {v2}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_7
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_d
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, [I
.line 205
invoke-static {p1, v1, v2, v3}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v2
add-int/2addr v1, v2
goto :goto_7
:cond_d
return-object p1
.line 80
:cond_e
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v1, "Contents length should be between 1 and 80 characters, but got "
invoke-static {v0}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
nop
:pswitch_data_0
.packed-switch 0xf1
:pswitch_0
:pswitch_0
:pswitch_0
:pswitch_0
.end packed-switch
:pswitch_data_1
.packed-switch 0xf1
:pswitch_4
:pswitch_3
:pswitch_2
:pswitch_1
.end packed-switch
.end method

View File

@@ -0,0 +1,70 @@
.class public abstract Lcom/google/zxing/oned/Code39Reader;
.super Lcom/google/zxing/oned/OneDReader;
.source "SourceFile"
# static fields
.field public static final CHARACTER_ENCODINGS:[I
# direct methods
.method static constructor <clinit>()V
.locals 1
const/16 v0, 0x2b
new-array v0, v0, [I
fill-array-data v0, :array_0
sput-object v0, Lcom/google/zxing/oned/Code39Reader;->CHARACTER_ENCODINGS:[I
return-void
:array_0
.array-data 4
0x34
0x121
0x61
0x160
0x31
0x130
0x70
0x25
0x124
0x64
0x109
0x49
0x148
0x19
0x118
0x58
0xd
0x10c
0x4c
0x1c
0x103
0x43
0x142
0x13
0x112
0x52
0x7
0x106
0x46
0x16
0x181
0xc1
0x1c0
0x91
0x190
0xd0
0x85
0x184
0xc4
0xa8
0xa2
0x8a
0x2a
.end array-data
.end method

View File

@@ -0,0 +1,575 @@
.class public final Lcom/google/zxing/oned/Code39Writer;
.super Lcom/google/zxing/oned/OneDimensionalCodeWriter;
.source "SourceFile"
# direct methods
.method public constructor <init>()V
.locals 0
.line 31
invoke-direct {p0}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;-><init>()V
return-void
.end method
.method public static toIntArray(I[I)V
.locals 3
const/4 v0, 0x0
:goto_0
const/16 v1, 0x9
if-ge v0, v1, :cond_1
rsub-int/lit8 v1, v0, 0x8
const/4 v2, 0x1
shl-int v1, v2, v1
and-int/2addr v1, p0
if-nez v1, :cond_0
goto :goto_1
:cond_0
const/4 v2, 0x2
.line 95
:goto_1
aput v2, p1, v0
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_1
return-void
.end method
.method public static tryToConvertToExtendedMode(Ljava/lang/String;)Ljava/lang/String;
.locals 7
.line 100
invoke-virtual {p0}, Ljava/lang/String;->length()I
move-result v0
.line 101
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const/4 v2, 0x0
:goto_0
if-ge v2, v0, :cond_e
.line 103
invoke-virtual {p0, v2}, Ljava/lang/String;->charAt(I)C
move-result v3
if-eqz v3, :cond_d
const/16 v4, 0x20
if-eq v3, v4, :cond_c
const/16 v5, 0x40
if-eq v3, v5, :cond_b
const/16 v5, 0x60
if-eq v3, v5, :cond_a
const/16 v5, 0x2d
if-eq v3, v5, :cond_c
const/16 v5, 0x2e
if-eq v3, v5, :cond_c
const/16 v5, 0x1a
if-gt v3, v5, :cond_0
const/16 v4, 0x24
.line 121
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 v3, v3, 0x40
int-to-char v3, v3
.line 122
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto/16 :goto_2
:cond_0
const/16 v5, 0x25
if-ge v3, v4, :cond_1
.line 124
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 v3, v3, 0x26
int-to-char v3, v3
.line 125
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto/16 :goto_2
:cond_1
const/16 v4, 0x2c
const/16 v6, 0x2f
if-le v3, v4, :cond_9
if-eq v3, v6, :cond_9
const/16 v4, 0x3a
if-ne v3, v4, :cond_2
goto :goto_1
:cond_2
const/16 v4, 0x39
if-gt v3, v4, :cond_3
int-to-char v3, v3
.line 130
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto/16 :goto_2
:cond_3
const/16 v4, 0x3f
if-gt v3, v4, :cond_4
.line 132
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 v3, v3, 0xb
int-to-char v3, v3
.line 133
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto/16 :goto_2
:cond_4
const/16 v4, 0x5a
if-gt v3, v4, :cond_5
int-to-char v3, v3
.line 135
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_2
:cond_5
const/16 v4, 0x5f
if-gt v3, v4, :cond_6
.line 137
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 v3, v3, -0x10
int-to-char v3, v3
.line 138
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_2
:cond_6
const/16 v4, 0x7a
if-gt v3, v4, :cond_7
const/16 v4, 0x2b
.line 140
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 v3, v3, -0x20
int-to-char v3, v3
.line 141
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_2
:cond_7
const/16 v4, 0x7f
if-gt v3, v4, :cond_8
.line 143
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 v3, v3, -0x2b
int-to-char v3, v3
.line 144
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_2
.line 146
:cond_8
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v3, "Requested content contains a non-encodable character: \'"
invoke-direct {v1, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0, v2}, Ljava/lang/String;->charAt(I)C
move-result p0
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
const-string p0, "\'"
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {v0, p0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.line 127
:cond_9
:goto_1
invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 v3, v3, 0x20
int-to-char v3, v3
.line 128
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_2
:cond_a
const-string v3, "%W"
.line 117
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_2
:cond_b
const-string v3, "%V"
.line 114
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_2
.line 111
:cond_c
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_2
:cond_d
const-string v3, "%U"
.line 106
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:goto_2
add-int/lit8 v2, v2, 0x1
goto/16 :goto_0
.line 152
:cond_e
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 1
.line 39
sget-object v0, Lcom/google/zxing/BarcodeFormat;->CODE_39:Lcom/google/zxing/BarcodeFormat;
if-ne p2, v0, :cond_0
.line 42
invoke-super/range {p0 .. p5}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
.line 40
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
const-string p3, "Can only encode CODE_39, but got "
invoke-virtual {p3, p2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public encode(Ljava/lang/String;)[Z
.locals 12
.line 47
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
const-string v1, "Requested contents should be less than 80 digits long, but got "
const/16 v2, 0x50
if-gt v0, v2, :cond_6
const/4 v3, 0x0
move v4, v3
:goto_0
const-string v5, "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%"
if-ge v4, v0, :cond_2
.line 54
invoke-virtual {p1, v4}, Ljava/lang/String;->charAt(I)C
move-result v6
invoke-virtual {v5, v6}, Ljava/lang/String;->indexOf(I)I
move-result v6
if-gez v6, :cond_1
.line 56
invoke-static {p1}, Lcom/google/zxing/oned/Code39Writer;->tryToConvertToExtendedMode(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
.line 57
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
if-gt v0, v2, :cond_0
goto :goto_1
.line 59
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v0, " (extended full ASCII mode)"
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
:cond_1
add-int/lit8 v4, v4, 0x1
goto :goto_0
:cond_2
:goto_1
const/16 v1, 0x9
new-array v2, v1, [I
add-int/lit8 v4, v0, 0x19
move v6, v3
:goto_2
if-ge v6, v0, :cond_4
.line 69
invoke-virtual {p1, v6}, Ljava/lang/String;->charAt(I)C
move-result v7
invoke-virtual {v5, v7}, Ljava/lang/String;->indexOf(I)I
move-result v7
.line 70
sget-object v8, Lcom/google/zxing/oned/Code39Reader;->CHARACTER_ENCODINGS:[I
aget v7, v8, v7
invoke-static {v7, v2}, Lcom/google/zxing/oned/Code39Writer;->toIntArray(I[I)V
move v7, v3
:goto_3
if-ge v7, v1, :cond_3
.line 71
aget v8, v2, v7
add-int/2addr v4, v8
add-int/lit8 v7, v7, 0x1
goto :goto_3
:cond_3
add-int/lit8 v6, v6, 0x1
goto :goto_2
.line 75
:cond_4
new-array v1, v4, [Z
const/16 v4, 0x94
.line 76
invoke-static {v4, v2}, Lcom/google/zxing/oned/Code39Writer;->toIntArray(I[I)V
const/4 v6, 0x1
.line 77
invoke-static {v1, v3, v2, v6}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v7
filled-new-array {v6}, [I
move-result-object v8
.line 79
invoke-static {v1, v7, v8, v3}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v9
add-int/2addr v7, v9
move v9, v3
:goto_4
if-ge v9, v0, :cond_5
.line 82
invoke-virtual {p1, v9}, Ljava/lang/String;->charAt(I)C
move-result v10
invoke-virtual {v5, v10}, Ljava/lang/String;->indexOf(I)I
move-result v10
.line 83
sget-object v11, Lcom/google/zxing/oned/Code39Reader;->CHARACTER_ENCODINGS:[I
aget v10, v11, v10
invoke-static {v10, v2}, Lcom/google/zxing/oned/Code39Writer;->toIntArray(I[I)V
.line 84
invoke-static {v1, v7, v2, v6}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v10
add-int/2addr v7, v10
.line 85
invoke-static {v1, v7, v8, v3}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v10
add-int/2addr v7, v10
add-int/lit8 v9, v9, 0x1
goto :goto_4
.line 87
:cond_5
invoke-static {v4, v2}, Lcom/google/zxing/oned/Code39Writer;->toIntArray(I[I)V
.line 88
invoke-static {v1, v7, v2, v6}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
return-object v1
.line 49
:cond_6
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-static {v0}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method

View File

@@ -0,0 +1,94 @@
.class public abstract Lcom/google/zxing/oned/Code93Reader;
.super Lcom/google/zxing/oned/OneDReader;
.source "SourceFile"
# static fields
.field public static final ALPHABET:[C
.field public static final ASTERISK_ENCODING:I
.field public static final CHARACTER_ENCODINGS:[I
# direct methods
.method static constructor <clinit>()V
.locals 2
const-string v0, "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%abcd*"
.line 41
invoke-virtual {v0}, Ljava/lang/String;->toCharArray()[C
move-result-object v0
sput-object v0, Lcom/google/zxing/oned/Code93Reader;->ALPHABET:[C
const/16 v0, 0x30
new-array v0, v0, [I
fill-array-data v0, :array_0
sput-object v0, Lcom/google/zxing/oned/Code93Reader;->CHARACTER_ENCODINGS:[I
const/16 v1, 0x2f
aget v0, v0, v1
sput v0, Lcom/google/zxing/oned/Code93Reader;->ASTERISK_ENCODING:I
return-void
:array_0
.array-data 4
0x114
0x148
0x144
0x142
0x128
0x124
0x122
0x150
0x112
0x10a
0x1a8
0x1a4
0x1a2
0x194
0x192
0x18a
0x168
0x164
0x162
0x134
0x11a
0x158
0x14c
0x146
0x12c
0x116
0x1b4
0x1b2
0x1ac
0x1a6
0x196
0x19a
0x16c
0x166
0x136
0x13a
0x12e
0x1d4
0x1d2
0x1ca
0x16e
0x176
0x1ae
0x126
0x1da
0x1d6
0x132
0x15e
.end array-data
.end method

View File

@@ -0,0 +1,354 @@
.class public Lcom/google/zxing/oned/Code93Writer;
.super Lcom/google/zxing/oned/OneDimensionalCodeWriter;
.source "SourceFile"
# direct methods
.method public constructor <init>()V
.locals 0
.line 28
invoke-direct {p0}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;-><init>()V
return-void
.end method
.method public static appendPattern([ZI[I)I
.locals 5
.line 109
array-length v0, p2
const/4 v1, 0x0
move v2, v1
:goto_0
if-ge v2, v0, :cond_1
aget v3, p2, v2
add-int/lit8 v4, p1, 0x1
if-eqz v3, :cond_0
const/4 v3, 0x1
goto :goto_1
:cond_0
move v3, v1
.line 110
:goto_1
aput-boolean v3, p0, p1
add-int/lit8 v2, v2, 0x1
move p1, v4
goto :goto_0
:cond_1
const/16 p0, 0x9
return p0
.end method
.method public static computeChecksumIndex(Ljava/lang/String;I)I
.locals 6
.line 119
invoke-virtual {p0}, Ljava/lang/String;->length()I
move-result v0
const/4 v1, 0x1
sub-int/2addr v0, v1
const/4 v2, 0x0
move v3, v1
:goto_0
if-ltz v0, :cond_1
const-string v4, "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%abcd*"
.line 120
invoke-virtual {p0, v0}, Ljava/lang/String;->charAt(I)C
move-result v5
invoke-virtual {v4, v5}, Ljava/lang/String;->indexOf(I)I
move-result v4
mul-int/2addr v4, v3
add-int/2addr v2, v4
add-int/2addr v3, v1
if-le v3, p1, :cond_0
move v3, v1
:cond_0
add-int/lit8 v0, v0, -0x1
goto :goto_0
.line 126
:cond_1
rem-int/lit8 v2, v2, 0x2f
return v2
.end method
.method private static toIntArray(I[I)V
.locals 4
const/4 v0, 0x0
move v1, v0
:goto_0
const/16 v2, 0x9
if-ge v1, v2, :cond_1
rsub-int/lit8 v2, v1, 0x8
const/4 v3, 0x1
shl-int v2, v3, v2
and-int/2addr v2, p0
if-nez v2, :cond_0
move v3, v0
.line 91
:cond_0
aput v3, p1, v1
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_1
return-void
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 1
.line 35
sget-object v0, Lcom/google/zxing/BarcodeFormat;->CODE_93:Lcom/google/zxing/BarcodeFormat;
if-ne p2, v0, :cond_0
.line 38
invoke-super/range {p0 .. p5}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
.line 36
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
const-string p3, "Can only encode CODE_93, but got "
invoke-virtual {p3, p2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public encode(Ljava/lang/String;)[Z
.locals 9
.line 43
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
const/16 v1, 0x50
if-gt v0, v1, :cond_1
const/16 v1, 0x9
new-array v2, v1, [I
.line 52
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v3
add-int/lit8 v3, v3, 0x4
mul-int/2addr v3, v1
const/4 v1, 0x1
add-int/2addr v3, v1
.line 55
sget-object v4, Lcom/google/zxing/oned/Code93Reader;->CHARACTER_ENCODINGS:[I
const/16 v5, 0x2f
aget v4, v4, v5
invoke-static {v4, v2}, Lcom/google/zxing/oned/Code93Writer;->toIntArray(I[I)V
.line 57
new-array v3, v3, [Z
const/4 v4, 0x0
.line 58
invoke-static {v3, v4, v2}, Lcom/google/zxing/oned/Code93Writer;->appendPattern([ZI[I)I
move-result v6
:goto_0
const-string v7, "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%abcd*"
if-ge v4, v0, :cond_0
.line 61
invoke-virtual {p1, v4}, Ljava/lang/String;->charAt(I)C
move-result v8
invoke-virtual {v7, v8}, Ljava/lang/String;->indexOf(I)I
move-result v7
.line 62
sget-object v8, Lcom/google/zxing/oned/Code93Reader;->CHARACTER_ENCODINGS:[I
aget v7, v8, v7
invoke-static {v7, v2}, Lcom/google/zxing/oned/Code93Writer;->toIntArray(I[I)V
.line 63
invoke-static {v3, v6, v2}, Lcom/google/zxing/oned/Code93Writer;->appendPattern([ZI[I)I
move-result v7
add-int/2addr v6, v7
add-int/lit8 v4, v4, 0x1
goto :goto_0
:cond_0
const/16 v0, 0x14
.line 67
invoke-static {p1, v0}, Lcom/google/zxing/oned/Code93Writer;->computeChecksumIndex(Ljava/lang/String;I)I
move-result v0
.line 68
sget-object v4, Lcom/google/zxing/oned/Code93Reader;->CHARACTER_ENCODINGS:[I
aget v8, v4, v0
invoke-static {v8, v2}, Lcom/google/zxing/oned/Code93Writer;->toIntArray(I[I)V
.line 69
invoke-static {v3, v6, v2}, Lcom/google/zxing/oned/Code93Writer;->appendPattern([ZI[I)I
move-result v8
add-int/2addr v6, v8
.line 72
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v8, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7, v0}, Ljava/lang/String;->charAt(I)C
move-result p1
invoke-virtual {v8, p1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const/16 v0, 0xf
.line 74
invoke-static {p1, v0}, Lcom/google/zxing/oned/Code93Writer;->computeChecksumIndex(Ljava/lang/String;I)I
move-result p1
.line 75
aget p1, v4, p1
invoke-static {p1, v2}, Lcom/google/zxing/oned/Code93Writer;->toIntArray(I[I)V
.line 76
invoke-static {v3, v6, v2}, Lcom/google/zxing/oned/Code93Writer;->appendPattern([ZI[I)I
move-result p1
add-int/2addr v6, p1
.line 79
aget p1, v4, v5
invoke-static {p1, v2}, Lcom/google/zxing/oned/Code93Writer;->toIntArray(I[I)V
.line 80
invoke-static {v3, v6, v2}, Lcom/google/zxing/oned/Code93Writer;->appendPattern([ZI[I)I
move-result p1
add-int/2addr v6, p1
.line 83
aput-boolean v1, v3, v6
return-object v3
.line 45
:cond_1
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v1, "Requested contents should be less than 80 digits long, but got "
invoke-static {v0}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method

View File

@@ -0,0 +1,37 @@
.class public abstract Lcom/google/zxing/oned/EAN13Reader;
.super Lcom/google/zxing/oned/UPCEANReader;
.source "SourceFile"
# static fields
.field public static final FIRST_DIGIT_ENCODINGS:[I
# direct methods
.method static constructor <clinit>()V
.locals 1
const/16 v0, 0xa
new-array v0, v0, [I
fill-array-data v0, :array_0
sput-object v0, Lcom/google/zxing/oned/EAN13Reader;->FIRST_DIGIT_ENCODINGS:[I
return-void
:array_0
.array-data 4
0x0
0xb
0xd
0xe
0x13
0x19
0x1c
0x15
0x16
0x1a
.end array-data
.end method

View File

@@ -0,0 +1,270 @@
.class public final Lcom/google/zxing/oned/EAN13Writer;
.super Lcom/google/zxing/oned/UPCEANWriter;
.source "SourceFile"
# direct methods
.method public constructor <init>()V
.locals 0
.line 32
invoke-direct {p0}, Lcom/google/zxing/oned/UPCEANWriter;-><init>()V
return-void
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 1
.line 46
sget-object v0, Lcom/google/zxing/BarcodeFormat;->EAN_13:Lcom/google/zxing/BarcodeFormat;
if-ne p2, v0, :cond_0
.line 50
invoke-super/range {p0 .. p5}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
.line 47
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
const-string p3, "Can only encode EAN_13, but got "
invoke-virtual {p3, p2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public encode(Ljava/lang/String;)[Z
.locals 10
.line 55
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
const/16 v1, 0xc
if-eq v0, v1, :cond_2
const/16 v2, 0xd
if-ne v0, v2, :cond_1
.line 69
:try_start_0
invoke-static {p1}, Lcom/google/zxing/oned/UPCEANReader;->checkStandardUPCEANChecksum(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_0
goto :goto_0
.line 70
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Contents do not pass checksum"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
:try_end_0
.catch Lcom/google/zxing/FormatException; {:try_start_0 .. :try_end_0} :catch_0
.line 73
:catch_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Illegal contents"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 77
:cond_1
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v1, "Requested contents should be 12 or 13 digits long, but got "
invoke-static {v0}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 61
:cond_2
:try_start_1
invoke-static {p1}, Lcom/google/zxing/oned/UPCEANReader;->getStandardUPCEANChecksum(Ljava/lang/CharSequence;)I
move-result v0
:try_end_1
.catch Lcom/google/zxing/FormatException; {:try_start_1 .. :try_end_1} :catch_1
.line 65
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
:goto_0
const/4 v0, 0x0
.line 82
invoke-virtual {p1, v0}, Ljava/lang/String;->charAt(I)C
move-result v2
const/16 v3, 0xa
invoke-static {v2, v3}, Ljava/lang/Character;->digit(CI)I
move-result v2
.line 83
sget-object v4, Lcom/google/zxing/oned/EAN13Reader;->FIRST_DIGIT_ENCODINGS:[I
aget v2, v4, v2
const/16 v4, 0x5f
new-array v4, v4, [Z
.line 87
sget-object v5, Lcom/google/zxing/oned/UPCEANReader;->START_END_PATTERN:[I
const/4 v6, 0x1
invoke-static {v4, v0, v5, v6}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v5
move v7, v6
:goto_1
const/4 v8, 0x6
if-gt v7, v8, :cond_4
.line 91
invoke-virtual {p1, v7}, Ljava/lang/String;->charAt(I)C
move-result v8
invoke-static {v8, v3}, Ljava/lang/Character;->digit(CI)I
move-result v8
rsub-int/lit8 v9, v7, 0x6
shr-int v9, v2, v9
and-int/2addr v9, v6
if-ne v9, v6, :cond_3
add-int/lit8 v8, v8, 0xa
.line 95
:cond_3
sget-object v9, Lcom/google/zxing/oned/UPCEANReader;->L_AND_G_PATTERNS:[[I
aget-object v8, v9, v8
invoke-static {v4, v5, v8, v0}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v8
add-int/2addr v5, v8
add-int/lit8 v7, v7, 0x1
goto :goto_1
.line 98
:cond_4
sget-object v2, Lcom/google/zxing/oned/UPCEANReader;->MIDDLE_PATTERN:[I
invoke-static {v4, v5, v2, v0}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v0
add-int/2addr v5, v0
const/4 v0, 0x7
:goto_2
if-gt v0, v1, :cond_5
.line 101
invoke-virtual {p1, v0}, Ljava/lang/String;->charAt(I)C
move-result v2
invoke-static {v2, v3}, Ljava/lang/Character;->digit(CI)I
move-result v2
.line 102
sget-object v7, Lcom/google/zxing/oned/UPCEANReader;->L_PATTERNS:[[I
aget-object v2, v7, v2
invoke-static {v4, v5, v2, v6}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v2
add-int/2addr v5, v2
add-int/lit8 v0, v0, 0x1
goto :goto_2
.line 104
:cond_5
sget-object p1, Lcom/google/zxing/oned/UPCEANReader;->START_END_PATTERN:[I
invoke-static {v4, v5, p1, v6}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
return-object v4
:catch_1
move-exception p1
.line 63
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/Throwable;)V
throw v0
.end method

View File

@@ -0,0 +1,245 @@
.class public final Lcom/google/zxing/oned/EAN8Writer;
.super Lcom/google/zxing/oned/UPCEANWriter;
.source "SourceFile"
# direct methods
.method public constructor <init>()V
.locals 0
.line 32
invoke-direct {p0}, Lcom/google/zxing/oned/UPCEANWriter;-><init>()V
return-void
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 1
.line 46
sget-object v0, Lcom/google/zxing/BarcodeFormat;->EAN_8:Lcom/google/zxing/BarcodeFormat;
if-ne p2, v0, :cond_0
.line 51
invoke-super/range {p0 .. p5}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
.line 47
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
const-string p3, "Can only encode EAN_8, but got "
invoke-virtual {p3, p2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public encode(Ljava/lang/String;)[Z
.locals 8
.line 59
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
const/4 v1, 0x7
if-eq v0, v1, :cond_2
const/16 v2, 0x8
if-ne v0, v2, :cond_1
.line 73
:try_start_0
invoke-static {p1}, Lcom/google/zxing/oned/UPCEANReader;->checkStandardUPCEANChecksum(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_0
goto :goto_0
.line 74
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Contents do not pass checksum"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
:try_end_0
.catch Lcom/google/zxing/FormatException; {:try_start_0 .. :try_end_0} :catch_0
.line 77
:catch_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Illegal contents"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 81
:cond_1
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v1, "Requested contents should be 8 digits long, but got "
invoke-static {v0}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 65
:cond_2
:try_start_1
invoke-static {p1}, Lcom/google/zxing/oned/UPCEANReader;->getStandardUPCEANChecksum(Ljava/lang/CharSequence;)I
move-result v0
:try_end_1
.catch Lcom/google/zxing/FormatException; {:try_start_1 .. :try_end_1} :catch_1
.line 69
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
:goto_0
const/16 v0, 0x43
new-array v0, v0, [Z
.line 88
sget-object v2, Lcom/google/zxing/oned/UPCEANReader;->START_END_PATTERN:[I
const/4 v3, 0x0
const/4 v4, 0x1
invoke-static {v0, v3, v2, v4}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v2
move v5, v3
:goto_1
const/4 v6, 0x3
const/16 v7, 0xa
if-gt v5, v6, :cond_3
.line 91
invoke-virtual {p1, v5}, Ljava/lang/String;->charAt(I)C
move-result v6
invoke-static {v6, v7}, Ljava/lang/Character;->digit(CI)I
move-result v6
.line 92
sget-object v7, Lcom/google/zxing/oned/UPCEANReader;->L_PATTERNS:[[I
aget-object v6, v7, v6
invoke-static {v0, v2, v6, v3}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v6
add-int/2addr v2, v6
add-int/lit8 v5, v5, 0x1
goto :goto_1
.line 95
:cond_3
sget-object v5, Lcom/google/zxing/oned/UPCEANReader;->MIDDLE_PATTERN:[I
invoke-static {v0, v2, v5, v3}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v3
add-int/2addr v2, v3
const/4 v3, 0x4
:goto_2
if-gt v3, v1, :cond_4
.line 98
invoke-virtual {p1, v3}, Ljava/lang/String;->charAt(I)C
move-result v5
invoke-static {v5, v7}, Ljava/lang/Character;->digit(CI)I
move-result v5
.line 99
sget-object v6, Lcom/google/zxing/oned/UPCEANReader;->L_PATTERNS:[[I
aget-object v5, v6, v5
invoke-static {v0, v2, v5, v4}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v5
add-int/2addr v2, v5
add-int/lit8 v3, v3, 0x1
goto :goto_2
.line 101
:cond_4
sget-object p1, Lcom/google/zxing/oned/UPCEANReader;->START_END_PATTERN:[I
invoke-static {v0, v2, p1, v4}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
return-object v0
:catch_1
move-exception p1
.line 67
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/Throwable;)V
throw v0
.end method

View File

@@ -0,0 +1,306 @@
.class public final Lcom/google/zxing/oned/ITFWriter;
.super Lcom/google/zxing/oned/OneDimensionalCodeWriter;
.source "SourceFile"
# static fields
.field public static final END_PATTERN:[I
.field public static final PATTERNS:[[I
.field public static final START_PATTERN:[I
# direct methods
.method static constructor <clinit>()V
.locals 5
const/4 v0, 0x1
filled-new-array {v0, v0, v0, v0}, [I
move-result-object v1
sput-object v1, Lcom/google/zxing/oned/ITFWriter;->START_PATTERN:[I
const/4 v1, 0x3
filled-new-array {v1, v0, v0}, [I
move-result-object v2
sput-object v2, Lcom/google/zxing/oned/ITFWriter;->END_PATTERN:[I
const/16 v2, 0xa
new-array v2, v2, [[I
const/4 v3, 0x0
filled-new-array {v0, v0, v1, v1, v0}, [I
move-result-object v4
aput-object v4, v2, v3
filled-new-array {v1, v0, v0, v0, v1}, [I
move-result-object v3
aput-object v3, v2, v0
const/4 v3, 0x2
filled-new-array {v0, v1, v0, v0, v1}, [I
move-result-object v4
aput-object v4, v2, v3
filled-new-array {v1, v1, v0, v0, v0}, [I
move-result-object v3
aput-object v3, v2, v1
const/4 v3, 0x4
filled-new-array {v0, v0, v1, v0, v1}, [I
move-result-object v4
aput-object v4, v2, v3
const/4 v3, 0x5
filled-new-array {v1, v0, v1, v0, v0}, [I
move-result-object v4
aput-object v4, v2, v3
const/4 v3, 0x6
filled-new-array {v0, v1, v1, v0, v0}, [I
move-result-object v4
aput-object v4, v2, v3
const/4 v3, 0x7
filled-new-array {v0, v0, v0, v1, v1}, [I
move-result-object v4
aput-object v4, v2, v3
const/16 v3, 0x8
filled-new-array {v1, v0, v0, v1, v0}, [I
move-result-object v4
aput-object v4, v2, v3
const/16 v3, 0x9
filled-new-array {v0, v1, v0, v1, v0}, [I
move-result-object v0
aput-object v0, v2, v3
sput-object v2, Lcom/google/zxing/oned/ITFWriter;->PATTERNS:[[I
return-void
.end method
.method public constructor <init>()V
.locals 0
.line 31
invoke-direct {p0}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;-><init>()V
return-void
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 1
.line 60
sget-object v0, Lcom/google/zxing/BarcodeFormat;->ITF:Lcom/google/zxing/BarcodeFormat;
if-ne p2, v0, :cond_0
.line 64
invoke-super/range {p0 .. p5}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
.line 61
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
const-string p3, "Can only encode ITF, but got "
invoke-virtual {p3, p2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public encode(Ljava/lang/String;)[Z
.locals 13
.line 69
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
.line 70
rem-int/lit8 v1, v0, 0x2
if-nez v1, :cond_3
const/16 v1, 0x50
if-gt v0, v1, :cond_2
mul-int/lit8 v1, v0, 0x9
add-int/lit8 v1, v1, 0x9
.line 77
new-array v1, v1, [Z
sget-object v2, Lcom/google/zxing/oned/ITFWriter;->START_PATTERN:[I
const/4 v3, 0x0
const/4 v4, 0x1
.line 78
invoke-static {v1, v3, v2, v4}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v2
move v5, v3
:goto_0
if-ge v5, v0, :cond_1
.line 80
invoke-virtual {p1, v5}, Ljava/lang/String;->charAt(I)C
move-result v6
const/16 v7, 0xa
invoke-static {v6, v7}, Ljava/lang/Character;->digit(CI)I
move-result v6
add-int/lit8 v8, v5, 0x1
.line 81
invoke-virtual {p1, v8}, Ljava/lang/String;->charAt(I)C
move-result v8
invoke-static {v8, v7}, Ljava/lang/Character;->digit(CI)I
move-result v8
new-array v7, v7, [I
move v9, v3
:goto_1
const/4 v10, 0x5
if-ge v9, v10, :cond_0
mul-int/lit8 v10, v9, 0x2
sget-object v11, Lcom/google/zxing/oned/ITFWriter;->PATTERNS:[[I
.line 84
aget-object v12, v11, v6
aget v12, v12, v9
aput v12, v7, v10
add-int/2addr v10, v4
.line 85
aget-object v11, v11, v8
aget v11, v11, v9
aput v11, v7, v10
add-int/lit8 v9, v9, 0x1
goto :goto_1
.line 87
:cond_0
invoke-static {v1, v2, v7, v4}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v6
add-int/2addr v2, v6
add-int/lit8 v5, v5, 0x2
goto :goto_0
:cond_1
sget-object p1, Lcom/google/zxing/oned/ITFWriter;->END_PATTERN:[I
.line 89
invoke-static {v1, v2, p1, v4}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
return-object v1
.line 74
:cond_2
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v1, "Requested contents should be less than 80 digits long, but got "
invoke-static {v0}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 71
:cond_3
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "The length of the input should be even"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method

View File

@@ -0,0 +1,3 @@
.class public abstract Lcom/google/zxing/oned/OneDReader;
.super Ljava/lang/Object;
.source "SourceFile"

View File

@@ -0,0 +1,230 @@
.class public abstract Lcom/google/zxing/oned/OneDimensionalCodeWriter;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/google/zxing/Writer;
# direct methods
.method public constructor <init>()V
.locals 0
.line 32
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static appendPattern([ZI[IZ)I
.locals 7
.line 104
array-length v0, p2
const/4 v1, 0x0
move v2, v1
move v3, v2
:goto_0
if-ge v2, v0, :cond_1
aget v4, p2, v2
move v5, v1
:goto_1
if-ge v5, v4, :cond_0
add-int/lit8 v6, p1, 0x1
.line 106
aput-boolean p3, p0, p1
add-int/lit8 v5, v5, 0x1
move p1, v6
goto :goto_1
:cond_0
add-int/2addr v3, v4
xor-int/lit8 p3, p3, 0x1
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_1
return v3
.end method
.method public static renderResult([ZIII)Lcom/google/zxing/common/BitMatrix;
.locals 5
.line 75
array-length v0, p0
add-int/2addr p3, v0
.line 78
invoke-static {p1, p3}, Ljava/lang/Math;->max(II)I
move-result p1
const/4 v1, 0x1
.line 79
invoke-static {v1, p2}, Ljava/lang/Math;->max(II)I
move-result p2
.line 81
div-int p3, p1, p3
mul-int v1, v0, p3
sub-int v1, p1, v1
.line 82
div-int/lit8 v1, v1, 0x2
.line 84
new-instance v2, Lcom/google/zxing/common/BitMatrix;
invoke-direct {v2, p1, p2}, Lcom/google/zxing/common/BitMatrix;-><init>(II)V
const/4 p1, 0x0
move v3, p1
:goto_0
if-ge v3, v0, :cond_1
.line 86
aget-boolean v4, p0, v3
if-eqz v4, :cond_0
.line 87
invoke-virtual {v2, v1, p1, p3, p2}, Lcom/google/zxing/common/BitMatrix;->setRegion(IIII)V
:cond_0
add-int/lit8 v3, v3, 0x1
add-int/2addr v1, p3
goto :goto_0
:cond_1
return-object v2
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 2
.line 53
invoke-virtual {p1}, Ljava/lang/String;->isEmpty()Z
move-result p2
if-nez p2, :cond_2
if-ltz p3, :cond_1
if-ltz p4, :cond_1
.line 62
invoke-virtual {p0}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->getDefaultMargin()I
move-result p2
if-eqz p5, :cond_0
.line 63
sget-object v0, Lcom/google/zxing/EncodeHintType;->MARGIN:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v0}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_0
.line 64
invoke-interface {p5, v0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p2
invoke-static {p2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result p2
.line 67
:cond_0
invoke-virtual {p0, p1}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->encode(Ljava/lang/String;)[Z
move-result-object p1
.line 68
invoke-static {p1, p3, p4, p2}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->renderResult([ZIII)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
.line 58
:cond_1
new-instance p1, Ljava/lang/IllegalArgumentException;
new-instance p2, Ljava/lang/StringBuilder;
const-string p5, "Negative size is not allowed. Input: "
invoke-direct {p2, p5}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const/16 p3, 0x78
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {p2, p4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 54
:cond_2
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "Found empty contents"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public abstract encode(Ljava/lang/String;)[Z
.end method
.method public getDefaultMargin()I
.locals 1
const/16 v0, 0xa
return v0
.end method

View File

@@ -0,0 +1,84 @@
.class public final Lcom/google/zxing/oned/UPCAWriter;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/google/zxing/Writer;
# instance fields
.field public final subWriter:Lcom/google/zxing/oned/EAN13Writer;
# direct methods
.method public constructor <init>()V
.locals 1
.line 32
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 34
new-instance v0, Lcom/google/zxing/oned/EAN13Writer;
invoke-direct {v0}, Lcom/google/zxing/oned/EAN13Writer;-><init>()V
iput-object v0, p0, Lcom/google/zxing/oned/UPCAWriter;->subWriter:Lcom/google/zxing/oned/EAN13Writer;
return-void
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 7
.line 48
sget-object v0, Lcom/google/zxing/BarcodeFormat;->UPC_A:Lcom/google/zxing/BarcodeFormat;
if-ne p2, v0, :cond_0
iget-object v1, p0, Lcom/google/zxing/oned/UPCAWriter;->subWriter:Lcom/google/zxing/oned/EAN13Writer;
.line 52
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
const-string p2, "0"
invoke-virtual {p2, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
sget-object v3, Lcom/google/zxing/BarcodeFormat;->EAN_13:Lcom/google/zxing/BarcodeFormat;
move v4, p3
move v5, p4
move-object v6, p5
invoke-virtual/range {v1 .. v6}, Lcom/google/zxing/oned/EAN13Writer;->encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
.line 49
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
const-string p3, "Can only encode UPC-A, but got "
invoke-virtual {p3, p2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method

View File

@@ -0,0 +1,328 @@
.class public abstract Lcom/google/zxing/oned/UPCEANReader;
.super Lcom/google/zxing/oned/OneDReader;
.source "SourceFile"
# static fields
.field public static final END_PATTERN:[I
.field public static final L_AND_G_PATTERNS:[[I
.field public static final L_PATTERNS:[[I
.field public static final MIDDLE_PATTERN:[I
.field public static final START_END_PATTERN:[I
# direct methods
.method static constructor <clinit>()V
.locals 10
const/4 v0, 0x1
filled-new-array {v0, v0, v0}, [I
move-result-object v1
sput-object v1, Lcom/google/zxing/oned/UPCEANReader;->START_END_PATTERN:[I
filled-new-array {v0, v0, v0, v0, v0}, [I
move-result-object v1
sput-object v1, Lcom/google/zxing/oned/UPCEANReader;->MIDDLE_PATTERN:[I
const/4 v1, 0x6
new-array v2, v1, [I
fill-array-data v2, :array_0
sput-object v2, Lcom/google/zxing/oned/UPCEANReader;->END_PATTERN:[I
const/16 v2, 0xa
new-array v3, v2, [[I
const/4 v4, 0x3
const/4 v5, 0x2
filled-new-array {v4, v5, v0, v0}, [I
move-result-object v6
const/4 v7, 0x0
aput-object v6, v3, v7
filled-new-array {v5, v5, v5, v0}, [I
move-result-object v6
aput-object v6, v3, v0
filled-new-array {v5, v0, v5, v5}, [I
move-result-object v6
aput-object v6, v3, v5
const/4 v6, 0x4
filled-new-array {v0, v6, v0, v0}, [I
move-result-object v8
aput-object v8, v3, v4
filled-new-array {v0, v0, v4, v5}, [I
move-result-object v8
aput-object v8, v3, v6
const/4 v8, 0x5
filled-new-array {v0, v5, v4, v0}, [I
move-result-object v9
aput-object v9, v3, v8
filled-new-array {v0, v0, v0, v6}, [I
move-result-object v6
aput-object v6, v3, v1
const/4 v1, 0x7
filled-new-array {v0, v4, v0, v5}, [I
move-result-object v6
aput-object v6, v3, v1
const/16 v1, 0x8
filled-new-array {v0, v5, v0, v4}, [I
move-result-object v6
aput-object v6, v3, v1
const/16 v1, 0x9
filled-new-array {v4, v0, v0, v5}, [I
move-result-object v4
aput-object v4, v3, v1
sput-object v3, Lcom/google/zxing/oned/UPCEANReader;->L_PATTERNS:[[I
const/16 v1, 0x14
new-array v4, v1, [[I
sput-object v4, Lcom/google/zxing/oned/UPCEANReader;->L_AND_G_PATTERNS:[[I
.line 86
invoke-static {v3, v7, v4, v7, v2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
:goto_0
if-ge v2, v1, :cond_1
sget-object v3, Lcom/google/zxing/oned/UPCEANReader;->L_PATTERNS:[[I
add-int/lit8 v4, v2, -0xa
.line 88
aget-object v3, v3, v4
.line 89
array-length v4, v3
new-array v4, v4, [I
move v5, v7
.line 90
:goto_1
array-length v6, v3
if-ge v5, v6, :cond_0
.line 91
array-length v6, v3
sub-int/2addr v6, v5
sub-int/2addr v6, v0
aget v6, v3, v6
aput v6, v4, v5
add-int/lit8 v5, v5, 0x1
goto :goto_1
:cond_0
sget-object v3, Lcom/google/zxing/oned/UPCEANReader;->L_AND_G_PATTERNS:[[I
.line 93
aput-object v4, v3, v2
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_1
return-void
nop
:array_0
.array-data 4
0x1
0x1
0x1
0x1
0x1
0x1
.end array-data
.end method
.method public static checkStandardUPCEANChecksum(Ljava/lang/CharSequence;)Z
.locals 5
.line 264
invoke-interface {p0}, Ljava/lang/CharSequence;->length()I
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_0
return v1
:cond_0
const/4 v2, 0x1
sub-int/2addr v0, v2
.line 268
invoke-interface {p0, v0}, Ljava/lang/CharSequence;->charAt(I)C
move-result v3
const/16 v4, 0xa
invoke-static {v3, v4}, Ljava/lang/Character;->digit(CI)I
move-result v3
.line 269
invoke-interface {p0, v1, v0}, Ljava/lang/CharSequence;->subSequence(II)Ljava/lang/CharSequence;
move-result-object p0
invoke-static {p0}, Lcom/google/zxing/oned/UPCEANReader;->getStandardUPCEANChecksum(Ljava/lang/CharSequence;)I
move-result p0
if-ne p0, v3, :cond_1
return v2
:cond_1
return v1
.end method
.method public static getStandardUPCEANChecksum(Ljava/lang/CharSequence;)I
.locals 5
.line 273
invoke-interface {p0}, Ljava/lang/CharSequence;->length()I
move-result v0
add-int/lit8 v1, v0, -0x1
const/4 v2, 0x0
:goto_0
const/16 v3, 0x9
if-ltz v1, :cond_1
.line 276
invoke-interface {p0, v1}, Ljava/lang/CharSequence;->charAt(I)C
move-result v4
add-int/lit8 v4, v4, -0x30
if-ltz v4, :cond_0
if-gt v4, v3, :cond_0
add-int/2addr v2, v4
add-int/lit8 v1, v1, -0x2
goto :goto_0
.line 278
:cond_0
invoke-static {}, Lcom/google/zxing/FormatException;->getFormatInstance()Lcom/google/zxing/FormatException;
move-result-object p0
throw p0
:cond_1
mul-int/lit8 v2, v2, 0x3
add-int/lit8 v0, v0, -0x2
:goto_1
if-ltz v0, :cond_3
.line 284
invoke-interface {p0, v0}, Ljava/lang/CharSequence;->charAt(I)C
move-result v1
add-int/lit8 v1, v1, -0x30
if-ltz v1, :cond_2
if-gt v1, v3, :cond_2
add-int/2addr v2, v1
add-int/lit8 v0, v0, -0x2
goto :goto_1
.line 286
:cond_2
invoke-static {}, Lcom/google/zxing/FormatException;->getFormatInstance()Lcom/google/zxing/FormatException;
move-result-object p0
throw p0
:cond_3
rsub-int p0, v2, 0x3e8
.line 290
rem-int/lit8 p0, p0, 0xa
return p0
.end method

View File

@@ -0,0 +1,24 @@
.class public abstract Lcom/google/zxing/oned/UPCEANWriter;
.super Lcom/google/zxing/oned/OneDimensionalCodeWriter;
.source "SourceFile"
# direct methods
.method public constructor <init>()V
.locals 0
.line 26
invoke-direct {p0}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;-><init>()V
return-void
.end method
# virtual methods
.method public getDefaultMargin()I
.locals 1
const/16 v0, 0x9
return v0
.end method

View File

@@ -0,0 +1,218 @@
.class public abstract Lcom/google/zxing/oned/UPCEReader;
.super Lcom/google/zxing/oned/UPCEANReader;
.source "SourceFile"
# static fields
.field public static final MIDDLE_END_PATTERN:[I
.field public static final NUMSYS_AND_CHECK_DIGIT_PATTERNS:[[I
# direct methods
.method static constructor <clinit>()V
.locals 4
const/4 v0, 0x6
new-array v0, v0, [I
fill-array-data v0, :array_0
sput-object v0, Lcom/google/zxing/oned/UPCEReader;->MIDDLE_END_PATTERN:[I
const/4 v0, 0x2
new-array v0, v0, [[I
const/16 v1, 0xa
new-array v2, v1, [I
fill-array-data v2, :array_1
const/4 v3, 0x0
aput-object v2, v0, v3
new-array v1, v1, [I
fill-array-data v1, :array_2
const/4 v2, 0x1
aput-object v1, v0, v2
sput-object v0, Lcom/google/zxing/oned/UPCEReader;->NUMSYS_AND_CHECK_DIGIT_PATTERNS:[[I
return-void
:array_0
.array-data 4
0x1
0x1
0x1
0x1
0x1
0x1
.end array-data
:array_1
.array-data 4
0x38
0x34
0x32
0x31
0x2c
0x26
0x23
0x2a
0x29
0x25
.end array-data
:array_2
.array-data 4
0x7
0xb
0xd
0xe
0x13
0x19
0x1c
0x15
0x16
0x1a
.end array-data
.end method
.method public static convertUPCEtoUPCA(Ljava/lang/String;)Ljava/lang/String;
.locals 10
const/4 v0, 0x6
new-array v0, v0, [C
const/4 v1, 0x1
const/4 v2, 0x7
const/4 v3, 0x0
.line 146
invoke-virtual {p0, v1, v2, v0, v3}, Ljava/lang/String;->getChars(II[CI)V
.line 147
new-instance v1, Ljava/lang/StringBuilder;
const/16 v4, 0xc
invoke-direct {v1, v4}, Ljava/lang/StringBuilder;-><init>(I)V
.line 148
invoke-virtual {p0, v3}, Ljava/lang/String;->charAt(I)C
move-result v4
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
const/4 v4, 0x5
aget-char v5, v0, v4
const-string v6, "00000"
const-string v7, "0000"
const/4 v8, 0x2
const/4 v9, 0x3
packed-switch v5, :pswitch_data_0
.line 170
invoke-virtual {v1, v0, v3, v4}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
.line 171
invoke-virtual {v1, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 172
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_0
:pswitch_0
const/4 v4, 0x4
.line 165
invoke-virtual {v1, v0, v3, v4}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
.line 166
invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
aget-char v0, v0, v4
.line 167
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_0
.line 160
:pswitch_1
invoke-virtual {v1, v0, v3, v9}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
.line 161
invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 162
invoke-virtual {v1, v0, v9, v8}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
goto :goto_0
.line 154
:pswitch_2
invoke-virtual {v1, v0, v3, v8}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
.line 155
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 156
invoke-virtual {v1, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 157
invoke-virtual {v1, v0, v8, v9}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
.line 176
:goto_0
invoke-virtual {p0}, Ljava/lang/String;->length()I
move-result v0
const/16 v3, 0x8
if-lt v0, v3, :cond_0
.line 177
invoke-virtual {p0, v2}, Ljava/lang/String;->charAt(I)C
move-result p0
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 179
:cond_0
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
:pswitch_data_0
.packed-switch 0x30
:pswitch_2
:pswitch_2
:pswitch_2
:pswitch_1
:pswitch_0
.end packed-switch
.end method

View File

@@ -0,0 +1,264 @@
.class public final Lcom/google/zxing/oned/UPCEWriter;
.super Lcom/google/zxing/oned/UPCEANWriter;
.source "SourceFile"
# direct methods
.method public constructor <init>()V
.locals 0
.line 32
invoke-direct {p0}, Lcom/google/zxing/oned/UPCEANWriter;-><init>()V
return-void
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 1
.line 44
sget-object v0, Lcom/google/zxing/BarcodeFormat;->UPC_E:Lcom/google/zxing/BarcodeFormat;
if-ne p2, v0, :cond_0
.line 48
invoke-super/range {p0 .. p5}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
.line 45
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
const-string p3, "Can only encode UPC_E, but got "
invoke-virtual {p3, p2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public encode(Ljava/lang/String;)[Z
.locals 9
.line 53
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
const/4 v1, 0x7
if-eq v0, v1, :cond_2
const/16 v2, 0x8
if-ne v0, v2, :cond_1
.line 67
:try_start_0
invoke-static {p1}, Lcom/google/zxing/oned/UPCEANReader;->checkStandardUPCEANChecksum(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_0
goto :goto_0
.line 68
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Contents do not pass checksum"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
:try_end_0
.catch Lcom/google/zxing/FormatException; {:try_start_0 .. :try_end_0} :catch_0
.line 71
:catch_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Illegal contents"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 75
:cond_1
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v1, "Requested contents should be 8 digits long, but got "
invoke-static {v0}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 59
:cond_2
:try_start_1
invoke-static {p1}, Lcom/google/zxing/oned/UPCEReader;->convertUPCEtoUPCA(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lcom/google/zxing/oned/UPCEANReader;->getStandardUPCEANChecksum(Ljava/lang/CharSequence;)I
move-result v0
:try_end_1
.catch Lcom/google/zxing/FormatException; {:try_start_1 .. :try_end_1} :catch_1
.line 63
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
:goto_0
const/4 v0, 0x0
.line 79
invoke-virtual {p1, v0}, Ljava/lang/String;->charAt(I)C
move-result v2
const/16 v3, 0xa
invoke-static {v2, v3}, Ljava/lang/Character;->digit(CI)I
move-result v2
const/4 v4, 0x1
if-eqz v2, :cond_4
if-ne v2, v4, :cond_3
goto :goto_1
.line 81
:cond_3
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Number system must be 0 or 1"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 84
:cond_4
:goto_1
invoke-virtual {p1, v1}, Ljava/lang/String;->charAt(I)C
move-result v1
invoke-static {v1, v3}, Ljava/lang/Character;->digit(CI)I
move-result v1
.line 85
sget-object v5, Lcom/google/zxing/oned/UPCEReader;->NUMSYS_AND_CHECK_DIGIT_PATTERNS:[[I
aget-object v2, v5, v2
aget v1, v2, v1
const/16 v2, 0x33
new-array v2, v2, [Z
.line 89
sget-object v5, Lcom/google/zxing/oned/UPCEANReader;->START_END_PATTERN:[I
invoke-static {v2, v0, v5, v4}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v5
move v6, v4
:goto_2
const/4 v7, 0x6
if-gt v6, v7, :cond_6
.line 92
invoke-virtual {p1, v6}, Ljava/lang/String;->charAt(I)C
move-result v7
invoke-static {v7, v3}, Ljava/lang/Character;->digit(CI)I
move-result v7
rsub-int/lit8 v8, v6, 0x6
shr-int v8, v1, v8
and-int/2addr v8, v4
if-ne v8, v4, :cond_5
add-int/lit8 v7, v7, 0xa
.line 96
:cond_5
sget-object v8, Lcom/google/zxing/oned/UPCEANReader;->L_AND_G_PATTERNS:[[I
aget-object v7, v8, v7
invoke-static {v2, v5, v7, v0}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
move-result v7
add-int/2addr v5, v7
add-int/lit8 v6, v6, 0x1
goto :goto_2
.line 99
:cond_6
sget-object p1, Lcom/google/zxing/oned/UPCEANReader;->END_PATTERN:[I
invoke-static {v2, v5, p1, v0}, Lcom/google/zxing/oned/OneDimensionalCodeWriter;->appendPattern([ZI[IZ)I
return-object v2
:catch_1
move-exception p1
.line 61
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/Throwable;)V
throw v0
.end method

View File

@@ -0,0 +1,498 @@
.class public final Lcom/google/zxing/pdf417/PDF417Writer;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/google/zxing/Writer;
# direct methods
.method public constructor <init>()V
.locals 0
.line 35
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static bitMatrixFromBitArray([[BI)Lcom/google/zxing/common/BitMatrix;
.locals 8
.line 147
new-instance v0, Lcom/google/zxing/common/BitMatrix;
const/4 v1, 0x0
aget-object v2, p0, v1
array-length v2, v2
mul-int/lit8 v3, p1, 0x2
add-int/2addr v2, v3
array-length v4, p0
add-int/2addr v4, v3
invoke-direct {v0, v2, v4}, Lcom/google/zxing/common/BitMatrix;-><init>(II)V
.line 148
invoke-virtual {v0}, Lcom/google/zxing/common/BitMatrix;->clear()V
.line 149
invoke-virtual {v0}, Lcom/google/zxing/common/BitMatrix;->getHeight()I
move-result v2
sub-int/2addr v2, p1
const/4 v3, 0x1
sub-int/2addr v2, v3
move v4, v1
:goto_0
array-length v5, p0
if-ge v4, v5, :cond_2
.line 150
aget-object v5, p0, v4
move v6, v1
.line 151
:goto_1
aget-object v7, p0, v1
array-length v7, v7
if-ge v6, v7, :cond_1
.line 153
aget-byte v7, v5, v6
if-ne v7, v3, :cond_0
add-int v7, v6, p1
.line 154
invoke-virtual {v0, v7, v2}, Lcom/google/zxing/common/BitMatrix;->set(II)V
:cond_0
add-int/lit8 v6, v6, 0x1
goto :goto_1
:cond_1
add-int/lit8 v4, v4, 0x1
add-int/lit8 v2, v2, -0x1
goto :goto_0
:cond_2
return-object v0
.end method
.method public static bitMatrixFromEncoder(Lcom/google/zxing/pdf417/encoder/PDF417;Ljava/lang/String;IIII)Lcom/google/zxing/common/BitMatrix;
.locals 4
.line 107
invoke-virtual {p0, p1, p2}, Lcom/google/zxing/pdf417/encoder/PDF417;->generateBarcodeLogic(Ljava/lang/String;I)V
.line 110
invoke-virtual {p0}, Lcom/google/zxing/pdf417/encoder/PDF417;->getBarcodeMatrix()Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;
move-result-object p1
const/4 p2, 0x4
const/4 v0, 0x1
invoke-virtual {p1, v0, p2}, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->getScaledMatrix(II)[[B
move-result-object p1
const/4 p2, 0x0
if-le p4, p3, :cond_0
move v1, v0
goto :goto_0
:cond_0
move v1, p2
.line 112
:goto_0
aget-object v2, p1, p2
array-length v2, v2
array-length v3, p1
if-ge v2, v3, :cond_1
move v2, v0
goto :goto_1
:cond_1
move v2, p2
:goto_1
if-eq v1, v2, :cond_2
.line 113
invoke-static {p1}, Lcom/google/zxing/pdf417/PDF417Writer;->rotateArray([[B)[[B
move-result-object p1
move v1, v0
goto :goto_2
:cond_2
move v1, p2
.line 117
:goto_2
aget-object p2, p1, p2
array-length p2, p2
div-int/2addr p3, p2
.line 118
array-length p2, p1
div-int/2addr p4, p2
if-ge p3, p4, :cond_3
goto :goto_3
:cond_3
move p3, p4
:goto_3
if-le p3, v0, :cond_5
.line 129
invoke-virtual {p0}, Lcom/google/zxing/pdf417/encoder/PDF417;->getBarcodeMatrix()Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;
move-result-object p0
shl-int/lit8 p1, p3, 0x2
invoke-virtual {p0, p3, p1}, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->getScaledMatrix(II)[[B
move-result-object p0
if-eqz v1, :cond_4
.line 131
invoke-static {p0}, Lcom/google/zxing/pdf417/PDF417Writer;->rotateArray([[B)[[B
move-result-object p0
.line 133
:cond_4
invoke-static {p0, p5}, Lcom/google/zxing/pdf417/PDF417Writer;->bitMatrixFromBitArray([[BI)Lcom/google/zxing/common/BitMatrix;
move-result-object p0
return-object p0
.line 135
:cond_5
invoke-static {p1, p5}, Lcom/google/zxing/pdf417/PDF417Writer;->bitMatrixFromBitArray([[BI)Lcom/google/zxing/common/BitMatrix;
move-result-object p0
return-object p0
.end method
.method public static rotateArray([[B)[[B
.locals 7
const/4 v0, 0x0
.line 165
aget-object v1, p0, v0
array-length v1, v1
array-length v2, p0
filled-new-array {v1, v2}, [I
move-result-object v1
sget-object v2, Ljava/lang/Byte;->TYPE:Ljava/lang/Class;
invoke-static {v2, v1}, Ljava/lang/reflect/Array;->newInstance(Ljava/lang/Class;[I)Ljava/lang/Object;
move-result-object v1
check-cast v1, [[B
move v2, v0
.line 166
:goto_0
array-length v3, p0
if-ge v2, v3, :cond_1
.line 169
array-length v3, p0
sub-int/2addr v3, v2
add-int/lit8 v3, v3, -0x1
move v4, v0
.line 170
:goto_1
aget-object v5, p0, v0
array-length v5, v5
if-ge v4, v5, :cond_0
.line 171
aget-object v5, v1, v4
aget-object v6, p0, v2
aget-byte v6, v6, v4
aput-byte v6, v5, v3
add-int/lit8 v4, v4, 0x1
goto :goto_1
:cond_0
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_1
return-object v1
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 7
.line 53
sget-object v0, Lcom/google/zxing/BarcodeFormat;->PDF_417:Lcom/google/zxing/BarcodeFormat;
if-ne p2, v0, :cond_6
.line 57
new-instance v1, Lcom/google/zxing/pdf417/encoder/PDF417;
invoke-direct {v1}, Lcom/google/zxing/pdf417/encoder/PDF417;-><init>()V
const/16 p2, 0x1e
const/4 v0, 0x2
if-eqz p5, :cond_4
.line 62
sget-object v2, Lcom/google/zxing/EncodeHintType;->PDF417_COMPACT:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v2}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_0
.line 63
invoke-interface {p5, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Ljava/lang/Boolean;->valueOf(Ljava/lang/String;)Ljava/lang/Boolean;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/Boolean;->booleanValue()Z
move-result v2
invoke-virtual {v1, v2}, Lcom/google/zxing/pdf417/encoder/PDF417;->setCompact(Z)V
.line 65
:cond_0
sget-object v2, Lcom/google/zxing/EncodeHintType;->PDF417_COMPACTION:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v2}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_1
.line 66
invoke-interface {p5, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Lcom/google/zxing/pdf417/encoder/Compaction;->valueOf(Ljava/lang/String;)Lcom/google/zxing/pdf417/encoder/Compaction;
move-result-object v2
invoke-virtual {v1, v2}, Lcom/google/zxing/pdf417/encoder/PDF417;->setCompaction(Lcom/google/zxing/pdf417/encoder/Compaction;)V
.line 68
:cond_1
sget-object v2, Lcom/google/zxing/EncodeHintType;->PDF417_DIMENSIONS:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v2}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v3
if-nez v3, :cond_5
.line 75
sget-object v2, Lcom/google/zxing/EncodeHintType;->MARGIN:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v2}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_2
.line 76
invoke-interface {p5, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p2
invoke-static {p2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result p2
.line 78
:cond_2
sget-object v2, Lcom/google/zxing/EncodeHintType;->ERROR_CORRECTION:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v2}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_3
.line 79
invoke-interface {p5, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v0
.line 81
:cond_3
sget-object v2, Lcom/google/zxing/EncodeHintType;->CHARACTER_SET:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v2}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_4
.line 82
invoke-interface {p5, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p5
invoke-virtual {p5}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p5
invoke-static {p5}, Ljava/nio/charset/Charset;->forName(Ljava/lang/String;)Ljava/nio/charset/Charset;
move-result-object p5
.line 83
invoke-virtual {v1, p5}, Lcom/google/zxing/pdf417/encoder/PDF417;->setEncoding(Ljava/nio/charset/Charset;)V
:cond_4
move v6, p2
move v3, v0
goto :goto_0
.line 69
:cond_5
invoke-interface {p5, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
invoke-static {p1}, Lcom/amazonaws/handlers/HandlerChainFactory$$ExternalSyntheticThrowCCEIfNotNull0;->m(Ljava/lang/Object;)V
const/4 p1, 0x0
.line 70
throw p1
:goto_0
move-object v2, p1
move v4, p3
move v5, p4
.line 87
invoke-static/range {v1 .. v6}, Lcom/google/zxing/pdf417/PDF417Writer;->bitMatrixFromEncoder(Lcom/google/zxing/pdf417/encoder/PDF417;Ljava/lang/String;IIII)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
.line 54
:cond_6
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
const-string p3, "Can only encode PDF_417, but got "
invoke-virtual {p3, p2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method

View File

@@ -0,0 +1,151 @@
.class public final Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field public currentRow:I
.field public final height:I
.field public final matrix:[Lcom/google/zxing/pdf417/encoder/BarcodeRow;
.field public final width:I
# direct methods
.method public constructor <init>(II)V
.locals 5
.line 35
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 36
new-array v0, p1, [Lcom/google/zxing/pdf417/encoder/BarcodeRow;
iput-object v0, p0, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->matrix:[Lcom/google/zxing/pdf417/encoder/BarcodeRow;
array-length v0, v0
const/4 v1, 0x0
:goto_0
if-ge v1, v0, :cond_0
iget-object v2, p0, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->matrix:[Lcom/google/zxing/pdf417/encoder/BarcodeRow;
.line 39
new-instance v3, Lcom/google/zxing/pdf417/encoder/BarcodeRow;
add-int/lit8 v4, p2, 0x4
mul-int/lit8 v4, v4, 0x11
add-int/lit8 v4, v4, 0x1
invoke-direct {v3, v4}, Lcom/google/zxing/pdf417/encoder/BarcodeRow;-><init>(I)V
aput-object v3, v2, v1
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_0
mul-int/lit8 p2, p2, 0x11
iput p2, p0, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->width:I
iput p1, p0, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->height:I
const/4 p1, -0x1
iput p1, p0, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->currentRow:I
return-void
.end method
# virtual methods
.method public getCurrentRow()Lcom/google/zxing/pdf417/encoder/BarcodeRow;
.locals 2
iget-object v0, p0, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->matrix:[Lcom/google/zxing/pdf417/encoder/BarcodeRow;
iget v1, p0, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->currentRow:I
.line 61
aget-object v0, v0, v1
return-object v0
.end method
.method public getScaledMatrix(II)[[B
.locals 6
iget v0, p0, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->height:I
mul-int/2addr v0, p2
iget v1, p0, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->width:I
mul-int/2addr v1, p1
filled-new-array {v0, v1}, [I
move-result-object v0
sget-object v1, Ljava/lang/Byte;->TYPE:Ljava/lang/Class;
.line 75
invoke-static {v1, v0}, Ljava/lang/reflect/Array;->newInstance(Ljava/lang/Class;[I)Ljava/lang/Object;
move-result-object v0
check-cast v0, [[B
iget v1, p0, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->height:I
mul-int/2addr v1, p2
const/4 v2, 0x0
:goto_0
if-ge v2, v1, :cond_0
sub-int v3, v1, v2
add-int/lit8 v3, v3, -0x1
iget-object v4, p0, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->matrix:[Lcom/google/zxing/pdf417/encoder/BarcodeRow;
.line 78
div-int v5, v2, p2
aget-object v4, v4, v5
invoke-virtual {v4, p1}, Lcom/google/zxing/pdf417/encoder/BarcodeRow;->getScaledRow(I)[B
move-result-object v4
aput-object v4, v0, v3
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_0
return-object v0
.end method
.method public startRow()V
.locals 1
iget v0, p0, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->currentRow:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/google/zxing/pdf417/encoder/BarcodeMatrix;->currentRow:I
return-void
.end method

View File

@@ -0,0 +1,103 @@
.class public final Lcom/google/zxing/pdf417/encoder/BarcodeRow;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field public currentLocation:I
.field public final row:[B
# direct methods
.method public constructor <init>(I)V
.locals 0
.line 31
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 32
new-array p1, p1, [B
iput-object p1, p0, Lcom/google/zxing/pdf417/encoder/BarcodeRow;->row:[B
const/4 p1, 0x0
iput p1, p0, Lcom/google/zxing/pdf417/encoder/BarcodeRow;->currentLocation:I
return-void
.end method
# virtual methods
.method public addBar(ZI)V
.locals 3
const/4 v0, 0x0
:goto_0
if-ge v0, p2, :cond_0
iget v1, p0, Lcom/google/zxing/pdf417/encoder/BarcodeRow;->currentLocation:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/zxing/pdf417/encoder/BarcodeRow;->currentLocation:I
.line 62
invoke-virtual {p0, v1, p1}, Lcom/google/zxing/pdf417/encoder/BarcodeRow;->set(IZ)V
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_0
return-void
.end method
.method public getScaledRow(I)[B
.locals 5
iget-object v0, p0, Lcom/google/zxing/pdf417/encoder/BarcodeRow;->row:[B
.line 79
array-length v0, v0
mul-int/2addr v0, p1
new-array v1, v0, [B
const/4 v2, 0x0
:goto_0
if-ge v2, v0, :cond_0
iget-object v3, p0, Lcom/google/zxing/pdf417/encoder/BarcodeRow;->row:[B
.line 81
div-int v4, v2, p1
aget-byte v3, v3, v4
aput-byte v3, v1, v2
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_0
return-object v1
.end method
.method public final set(IZ)V
.locals 1
iget-object v0, p0, Lcom/google/zxing/pdf417/encoder/BarcodeRow;->row:[B
int-to-byte p2, p2
.line 53
aput-byte p2, v0, p1
return-void
.end method

View File

@@ -0,0 +1,117 @@
.class public final enum Lcom/google/zxing/pdf417/encoder/Compaction;
.super Ljava/lang/Enum;
.source "SourceFile"
# static fields
.field private static final synthetic $VALUES:[Lcom/google/zxing/pdf417/encoder/Compaction;
.field public static final enum AUTO:Lcom/google/zxing/pdf417/encoder/Compaction;
.field public static final enum BYTE:Lcom/google/zxing/pdf417/encoder/Compaction;
.field public static final enum NUMERIC:Lcom/google/zxing/pdf417/encoder/Compaction;
.field public static final enum TEXT:Lcom/google/zxing/pdf417/encoder/Compaction;
# direct methods
.method static constructor <clinit>()V
.locals 6
.line 24
new-instance v0, Lcom/google/zxing/pdf417/encoder/Compaction;
const-string v1, "AUTO"
const/4 v2, 0x0
invoke-direct {v0, v1, v2}, Lcom/google/zxing/pdf417/encoder/Compaction;-><init>(Ljava/lang/String;I)V
sput-object v0, Lcom/google/zxing/pdf417/encoder/Compaction;->AUTO:Lcom/google/zxing/pdf417/encoder/Compaction;
.line 25
new-instance v1, Lcom/google/zxing/pdf417/encoder/Compaction;
const-string v2, "TEXT"
const/4 v3, 0x1
invoke-direct {v1, v2, v3}, Lcom/google/zxing/pdf417/encoder/Compaction;-><init>(Ljava/lang/String;I)V
sput-object v1, Lcom/google/zxing/pdf417/encoder/Compaction;->TEXT:Lcom/google/zxing/pdf417/encoder/Compaction;
.line 26
new-instance v2, Lcom/google/zxing/pdf417/encoder/Compaction;
const-string v3, "BYTE"
const/4 v4, 0x2
invoke-direct {v2, v3, v4}, Lcom/google/zxing/pdf417/encoder/Compaction;-><init>(Ljava/lang/String;I)V
sput-object v2, Lcom/google/zxing/pdf417/encoder/Compaction;->BYTE:Lcom/google/zxing/pdf417/encoder/Compaction;
.line 27
new-instance v3, Lcom/google/zxing/pdf417/encoder/Compaction;
const-string v4, "NUMERIC"
const/4 v5, 0x3
invoke-direct {v3, v4, v5}, Lcom/google/zxing/pdf417/encoder/Compaction;-><init>(Ljava/lang/String;I)V
sput-object v3, Lcom/google/zxing/pdf417/encoder/Compaction;->NUMERIC:Lcom/google/zxing/pdf417/encoder/Compaction;
filled-new-array {v0, v1, v2, v3}, [Lcom/google/zxing/pdf417/encoder/Compaction;
move-result-object v0
sput-object v0, Lcom/google/zxing/pdf417/encoder/Compaction;->$VALUES:[Lcom/google/zxing/pdf417/encoder/Compaction;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
.line 22
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/google/zxing/pdf417/encoder/Compaction;
.locals 1
const-class v0, Lcom/google/zxing/pdf417/encoder/Compaction;
.line 22
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/google/zxing/pdf417/encoder/Compaction;
return-object p0
.end method
.method public static values()[Lcom/google/zxing/pdf417/encoder/Compaction;
.locals 1
sget-object v0, Lcom/google/zxing/pdf417/encoder/Compaction;->$VALUES:[Lcom/google/zxing/pdf417/encoder/Compaction;
.line 22
invoke-virtual {v0}, [Lcom/google/zxing/pdf417/encoder/Compaction;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/google/zxing/pdf417/encoder/Compaction;
return-object v0
.end method

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,83 @@
.class public abstract synthetic Lcom/google/zxing/pdf417/encoder/PDF417HighLevelEncoder$1;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/zxing/pdf417/encoder/PDF417HighLevelEncoder;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1009
name = null
.end annotation
# static fields
.field public static final synthetic $SwitchMap$com$google$zxing$pdf417$encoder$Compaction:[I
# direct methods
.method static constructor <clinit>()V
.locals 3
.line 183
invoke-static {}, Lcom/google/zxing/pdf417/encoder/Compaction;->values()[Lcom/google/zxing/pdf417/encoder/Compaction;
move-result-object v0
array-length v0, v0
new-array v0, v0, [I
sput-object v0, Lcom/google/zxing/pdf417/encoder/PDF417HighLevelEncoder$1;->$SwitchMap$com$google$zxing$pdf417$encoder$Compaction:[I
:try_start_0
sget-object v1, Lcom/google/zxing/pdf417/encoder/Compaction;->TEXT:Lcom/google/zxing/pdf417/encoder/Compaction;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x1
aput v2, v0, v1
:try_end_0
.catch Ljava/lang/NoSuchFieldError; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
:try_start_1
sget-object v0, Lcom/google/zxing/pdf417/encoder/PDF417HighLevelEncoder$1;->$SwitchMap$com$google$zxing$pdf417$encoder$Compaction:[I
sget-object v1, Lcom/google/zxing/pdf417/encoder/Compaction;->BYTE:Lcom/google/zxing/pdf417/encoder/Compaction;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x2
aput v2, v0, v1
:try_end_1
.catch Ljava/lang/NoSuchFieldError; {:try_start_1 .. :try_end_1} :catch_1
:catch_1
:try_start_2
sget-object v0, Lcom/google/zxing/pdf417/encoder/PDF417HighLevelEncoder$1;->$SwitchMap$com$google$zxing$pdf417$encoder$Compaction:[I
sget-object v1, Lcom/google/zxing/pdf417/encoder/Compaction;->NUMERIC:Lcom/google/zxing/pdf417/encoder/Compaction;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x3
aput v2, v0, v1
:try_end_2
.catch Ljava/lang/NoSuchFieldError; {:try_start_2 .. :try_end_2} :catch_2
:catch_2
return-void
.end method

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,274 @@
.class public final Lcom/google/zxing/qrcode/QRCodeWriter;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lcom/google/zxing/Writer;
# direct methods
.method public constructor <init>()V
.locals 0
.line 36
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static renderResult(Lcom/google/zxing/qrcode/encoder/QRCode;III)Lcom/google/zxing/common/BitMatrix;
.locals 9
.line 85
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/QRCode;->getMatrix()Lcom/google/zxing/qrcode/encoder/ByteMatrix;
move-result-object p0
if-eqz p0, :cond_3
.line 89
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getWidth()I
move-result v0
.line 90
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getHeight()I
move-result v1
const/4 v2, 0x1
shl-int/2addr p3, v2
add-int v3, v0, p3
add-int/2addr p3, v1
.line 93
invoke-static {p1, v3}, Ljava/lang/Math;->max(II)I
move-result p1
.line 94
invoke-static {p2, p3}, Ljava/lang/Math;->max(II)I
move-result p2
.line 96
div-int v3, p1, v3
div-int p3, p2, p3
invoke-static {v3, p3}, Ljava/lang/Math;->min(II)I
move-result p3
mul-int v3, v0, p3
sub-int v3, p1, v3
.line 101
div-int/lit8 v3, v3, 0x2
mul-int v4, v1, p3
sub-int v4, p2, v4
.line 102
div-int/lit8 v4, v4, 0x2
.line 104
new-instance v5, Lcom/google/zxing/common/BitMatrix;
invoke-direct {v5, p1, p2}, Lcom/google/zxing/common/BitMatrix;-><init>(II)V
const/4 p1, 0x0
move p2, p1
:goto_0
if-ge p2, v1, :cond_2
move v6, p1
move v7, v3
:goto_1
if-ge v6, v0, :cond_1
.line 109
invoke-virtual {p0, v6, p2}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->get(II)B
move-result v8
if-ne v8, v2, :cond_0
.line 110
invoke-virtual {v5, v7, v4, p3, p3}, Lcom/google/zxing/common/BitMatrix;->setRegion(IIII)V
:cond_0
add-int/lit8 v6, v6, 0x1
add-int/2addr v7, p3
goto :goto_1
:cond_1
add-int/lit8 p2, p2, 0x1
add-int/2addr v4, p3
goto :goto_0
:cond_2
return-object v5
.line 87
:cond_3
new-instance p0, Ljava/lang/IllegalStateException;
invoke-direct {p0}, Ljava/lang/IllegalStateException;-><init>()V
throw p0
.end method
# virtual methods
.method public encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
.locals 3
.line 54
invoke-virtual {p1}, Ljava/lang/String;->isEmpty()Z
move-result v0
if-nez v0, :cond_4
.line 58
sget-object v0, Lcom/google/zxing/BarcodeFormat;->QR_CODE:Lcom/google/zxing/BarcodeFormat;
if-ne p2, v0, :cond_3
if-ltz p3, :cond_2
if-ltz p4, :cond_2
.line 67
sget-object p2, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;->L:Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
const/4 v0, 0x4
if-eqz p5, :cond_1
.line 70
sget-object v1, Lcom/google/zxing/EncodeHintType;->ERROR_CORRECTION:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v1}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_0
.line 71
invoke-interface {p5, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p2
invoke-static {p2}, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;->valueOf(Ljava/lang/String;)Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
move-result-object p2
.line 73
:cond_0
sget-object v1, Lcom/google/zxing/EncodeHintType;->MARGIN:Lcom/google/zxing/EncodeHintType;
invoke-interface {p5, v1}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_1
.line 74
invoke-interface {p5, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v0
.line 78
:cond_1
invoke-static {p1, p2, p5}, Lcom/google/zxing/qrcode/encoder/Encoder;->encode(Ljava/lang/String;Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;Ljava/util/Map;)Lcom/google/zxing/qrcode/encoder/QRCode;
move-result-object p1
.line 79
invoke-static {p1, p3, p4, v0}, Lcom/google/zxing/qrcode/QRCodeWriter;->renderResult(Lcom/google/zxing/qrcode/encoder/QRCode;III)Lcom/google/zxing/common/BitMatrix;
move-result-object p1
return-object p1
.line 63
:cond_2
new-instance p1, Ljava/lang/IllegalArgumentException;
new-instance p2, Ljava/lang/StringBuilder;
const-string p5, "Requested dimensions are too small: "
invoke-direct {p2, p5}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const/16 p3, 0x78
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {p2, p4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 59
:cond_3
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
const-string p3, "Can only encode QR_CODE, but got "
invoke-virtual {p3, p2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 55
:cond_4
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "Found empty contents"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method

View File

@@ -0,0 +1,167 @@
.class public final enum Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.super Ljava/lang/Enum;
.source "SourceFile"
# static fields
.field private static final synthetic $VALUES:[Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.field private static final FOR_BITS:[Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.field public static final enum H:Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.field public static final enum L:Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.field public static final enum M:Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.field public static final enum Q:Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
# instance fields
.field private final bits:I
# direct methods
.method static constructor <clinit>()V
.locals 7
.line 28
new-instance v0, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
const-string v1, "L"
const/4 v2, 0x0
const/4 v3, 0x1
invoke-direct {v0, v1, v2, v3}, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;-><init>(Ljava/lang/String;II)V
sput-object v0, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;->L:Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.line 30
new-instance v1, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
const-string v4, "M"
invoke-direct {v1, v4, v3, v2}, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;-><init>(Ljava/lang/String;II)V
sput-object v1, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;->M:Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.line 32
new-instance v2, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
const-string v3, "Q"
const/4 v4, 0x2
const/4 v5, 0x3
invoke-direct {v2, v3, v4, v5}, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;-><init>(Ljava/lang/String;II)V
sput-object v2, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;->Q:Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.line 34
new-instance v3, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
const-string v6, "H"
invoke-direct {v3, v6, v5, v4}, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;-><init>(Ljava/lang/String;II)V
sput-object v3, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;->H:Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
filled-new-array {v0, v1, v2, v3}, [Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
move-result-object v4
sput-object v4, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;->$VALUES:[Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
filled-new-array {v1, v0, v3, v2}, [Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
move-result-object v0
sput-object v0, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;->FOR_BITS:[Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;II)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(I)V"
}
.end annotation
.line 40
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
iput p3, p0, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;->bits:I
return-void
.end method
.method public static forBits(I)Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.locals 2
if-ltz p0, :cond_0
sget-object v0, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;->FOR_BITS:[Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.line 53
array-length v1, v0
if-ge p0, v1, :cond_0
.line 56
aget-object p0, v0, p0
return-object p0
.line 54
:cond_0
new-instance p0, Ljava/lang/IllegalArgumentException;
invoke-direct {p0}, Ljava/lang/IllegalArgumentException;-><init>()V
throw p0
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.locals 1
const-class v0, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.line 25
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
return-object p0
.end method
.method public static values()[Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.locals 1
sget-object v0, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;->$VALUES:[Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.line 25
invoke-virtual {v0}, [Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
return-object v0
.end method
# virtual methods
.method public getBits()I
.locals 1
iget v0, p0, Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;->bits:I
return v0
.end method

View File

@@ -0,0 +1,425 @@
.class public final enum Lcom/google/zxing/qrcode/decoder/Mode;
.super Ljava/lang/Enum;
.source "SourceFile"
# static fields
.field private static final synthetic $VALUES:[Lcom/google/zxing/qrcode/decoder/Mode;
.field public static final enum ALPHANUMERIC:Lcom/google/zxing/qrcode/decoder/Mode;
.field public static final enum BYTE:Lcom/google/zxing/qrcode/decoder/Mode;
.field public static final enum ECI:Lcom/google/zxing/qrcode/decoder/Mode;
.field public static final enum FNC1_FIRST_POSITION:Lcom/google/zxing/qrcode/decoder/Mode;
.field public static final enum FNC1_SECOND_POSITION:Lcom/google/zxing/qrcode/decoder/Mode;
.field public static final enum HANZI:Lcom/google/zxing/qrcode/decoder/Mode;
.field public static final enum KANJI:Lcom/google/zxing/qrcode/decoder/Mode;
.field public static final enum NUMERIC:Lcom/google/zxing/qrcode/decoder/Mode;
.field public static final enum STRUCTURED_APPEND:Lcom/google/zxing/qrcode/decoder/Mode;
.field public static final enum TERMINATOR:Lcom/google/zxing/qrcode/decoder/Mode;
# instance fields
.field private final bits:I
.field private final characterCountBitsForVersions:[I
# direct methods
.method static constructor <clinit>()V
.locals 16
.line 27
new-instance v0, Lcom/google/zxing/qrcode/decoder/Mode;
const/4 v1, 0x0
filled-new-array {v1, v1, v1}, [I
move-result-object v2
const-string v3, "TERMINATOR"
invoke-direct {v0, v3, v1, v2, v1}, Lcom/google/zxing/qrcode/decoder/Mode;-><init>(Ljava/lang/String;I[II)V
sput-object v0, Lcom/google/zxing/qrcode/decoder/Mode;->TERMINATOR:Lcom/google/zxing/qrcode/decoder/Mode;
.line 28
new-instance v2, Lcom/google/zxing/qrcode/decoder/Mode;
const/16 v3, 0xe
const/16 v4, 0xa
const/16 v5, 0xc
filled-new-array {v4, v5, v3}, [I
move-result-object v3
const-string v6, "NUMERIC"
const/4 v7, 0x1
invoke-direct {v2, v6, v7, v3, v7}, Lcom/google/zxing/qrcode/decoder/Mode;-><init>(Ljava/lang/String;I[II)V
sput-object v2, Lcom/google/zxing/qrcode/decoder/Mode;->NUMERIC:Lcom/google/zxing/qrcode/decoder/Mode;
.line 29
new-instance v3, Lcom/google/zxing/qrcode/decoder/Mode;
const/16 v6, 0x9
const/16 v7, 0xb
const/16 v8, 0xd
filled-new-array {v6, v7, v8}, [I
move-result-object v7
const-string v9, "ALPHANUMERIC"
const/4 v10, 0x2
invoke-direct {v3, v9, v10, v7, v10}, Lcom/google/zxing/qrcode/decoder/Mode;-><init>(Ljava/lang/String;I[II)V
sput-object v3, Lcom/google/zxing/qrcode/decoder/Mode;->ALPHANUMERIC:Lcom/google/zxing/qrcode/decoder/Mode;
.line 30
new-instance v7, Lcom/google/zxing/qrcode/decoder/Mode;
const/4 v9, 0x3
filled-new-array {v1, v1, v1}, [I
move-result-object v10
const-string v11, "STRUCTURED_APPEND"
invoke-direct {v7, v11, v9, v10, v9}, Lcom/google/zxing/qrcode/decoder/Mode;-><init>(Ljava/lang/String;I[II)V
sput-object v7, Lcom/google/zxing/qrcode/decoder/Mode;->STRUCTURED_APPEND:Lcom/google/zxing/qrcode/decoder/Mode;
.line 31
new-instance v9, Lcom/google/zxing/qrcode/decoder/Mode;
const/16 v10, 0x10
const/16 v11, 0x8
filled-new-array {v11, v10, v10}, [I
move-result-object v10
const-string v12, "BYTE"
const/4 v13, 0x4
invoke-direct {v9, v12, v13, v10, v13}, Lcom/google/zxing/qrcode/decoder/Mode;-><init>(Ljava/lang/String;I[II)V
sput-object v9, Lcom/google/zxing/qrcode/decoder/Mode;->BYTE:Lcom/google/zxing/qrcode/decoder/Mode;
.line 32
new-instance v10, Lcom/google/zxing/qrcode/decoder/Mode;
filled-new-array {v1, v1, v1}, [I
move-result-object v12
const-string v13, "ECI"
const/4 v14, 0x5
const/4 v15, 0x7
invoke-direct {v10, v13, v14, v12, v15}, Lcom/google/zxing/qrcode/decoder/Mode;-><init>(Ljava/lang/String;I[II)V
sput-object v10, Lcom/google/zxing/qrcode/decoder/Mode;->ECI:Lcom/google/zxing/qrcode/decoder/Mode;
.line 33
new-instance v12, Lcom/google/zxing/qrcode/decoder/Mode;
const/4 v13, 0x6
filled-new-array {v11, v4, v5}, [I
move-result-object v8
const-string v4, "KANJI"
invoke-direct {v12, v4, v13, v8, v11}, Lcom/google/zxing/qrcode/decoder/Mode;-><init>(Ljava/lang/String;I[II)V
sput-object v12, Lcom/google/zxing/qrcode/decoder/Mode;->KANJI:Lcom/google/zxing/qrcode/decoder/Mode;
.line 34
new-instance v8, Lcom/google/zxing/qrcode/decoder/Mode;
const-string v4, "FNC1_FIRST_POSITION"
filled-new-array {v1, v1, v1}, [I
move-result-object v13
invoke-direct {v8, v4, v15, v13, v14}, Lcom/google/zxing/qrcode/decoder/Mode;-><init>(Ljava/lang/String;I[II)V
sput-object v8, Lcom/google/zxing/qrcode/decoder/Mode;->FNC1_FIRST_POSITION:Lcom/google/zxing/qrcode/decoder/Mode;
.line 35
new-instance v13, Lcom/google/zxing/qrcode/decoder/Mode;
const-string v4, "FNC1_SECOND_POSITION"
filled-new-array {v1, v1, v1}, [I
move-result-object v1
invoke-direct {v13, v4, v11, v1, v6}, Lcom/google/zxing/qrcode/decoder/Mode;-><init>(Ljava/lang/String;I[II)V
sput-object v13, Lcom/google/zxing/qrcode/decoder/Mode;->FNC1_SECOND_POSITION:Lcom/google/zxing/qrcode/decoder/Mode;
.line 37
new-instance v14, Lcom/google/zxing/qrcode/decoder/Mode;
const-string v1, "HANZI"
const/16 v4, 0xa
filled-new-array {v11, v4, v5}, [I
move-result-object v4
const/16 v5, 0xd
invoke-direct {v14, v1, v6, v4, v5}, Lcom/google/zxing/qrcode/decoder/Mode;-><init>(Ljava/lang/String;I[II)V
sput-object v14, Lcom/google/zxing/qrcode/decoder/Mode;->HANZI:Lcom/google/zxing/qrcode/decoder/Mode;
move-object v1, v2
move-object v2, v3
move-object v3, v7
move-object v4, v9
move-object v5, v10
move-object v6, v12
move-object v7, v8
move-object v8, v13
move-object v9, v14
filled-new-array/range {v0 .. v9}, [Lcom/google/zxing/qrcode/decoder/Mode;
move-result-object v0
sput-object v0, Lcom/google/zxing/qrcode/decoder/Mode;->$VALUES:[Lcom/google/zxing/qrcode/decoder/Mode;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I[II)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"([II)V"
}
.end annotation
.line 42
invoke-direct {p0, p1, p2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
iput-object p3, p0, Lcom/google/zxing/qrcode/decoder/Mode;->characterCountBitsForVersions:[I
iput p4, p0, Lcom/google/zxing/qrcode/decoder/Mode;->bits:I
return-void
.end method
.method public static forBits(I)Lcom/google/zxing/qrcode/decoder/Mode;
.locals 1
if-eqz p0, :cond_9
const/4 v0, 0x1
if-eq p0, v0, :cond_8
const/4 v0, 0x2
if-eq p0, v0, :cond_7
const/4 v0, 0x3
if-eq p0, v0, :cond_6
const/4 v0, 0x4
if-eq p0, v0, :cond_5
const/4 v0, 0x5
if-eq p0, v0, :cond_4
const/4 v0, 0x7
if-eq p0, v0, :cond_3
const/16 v0, 0x8
if-eq p0, v0, :cond_2
const/16 v0, 0x9
if-eq p0, v0, :cond_1
const/16 v0, 0xd
if-ne p0, v0, :cond_0
sget-object p0, Lcom/google/zxing/qrcode/decoder/Mode;->HANZI:Lcom/google/zxing/qrcode/decoder/Mode;
return-object p0
.line 76
:cond_0
new-instance p0, Ljava/lang/IllegalArgumentException;
invoke-direct {p0}, Ljava/lang/IllegalArgumentException;-><init>()V
throw p0
:cond_1
sget-object p0, Lcom/google/zxing/qrcode/decoder/Mode;->FNC1_SECOND_POSITION:Lcom/google/zxing/qrcode/decoder/Mode;
return-object p0
:cond_2
sget-object p0, Lcom/google/zxing/qrcode/decoder/Mode;->KANJI:Lcom/google/zxing/qrcode/decoder/Mode;
return-object p0
:cond_3
sget-object p0, Lcom/google/zxing/qrcode/decoder/Mode;->ECI:Lcom/google/zxing/qrcode/decoder/Mode;
return-object p0
:cond_4
sget-object p0, Lcom/google/zxing/qrcode/decoder/Mode;->FNC1_FIRST_POSITION:Lcom/google/zxing/qrcode/decoder/Mode;
return-object p0
:cond_5
sget-object p0, Lcom/google/zxing/qrcode/decoder/Mode;->BYTE:Lcom/google/zxing/qrcode/decoder/Mode;
return-object p0
:cond_6
sget-object p0, Lcom/google/zxing/qrcode/decoder/Mode;->STRUCTURED_APPEND:Lcom/google/zxing/qrcode/decoder/Mode;
return-object p0
:cond_7
sget-object p0, Lcom/google/zxing/qrcode/decoder/Mode;->ALPHANUMERIC:Lcom/google/zxing/qrcode/decoder/Mode;
return-object p0
:cond_8
sget-object p0, Lcom/google/zxing/qrcode/decoder/Mode;->NUMERIC:Lcom/google/zxing/qrcode/decoder/Mode;
return-object p0
:cond_9
sget-object p0, Lcom/google/zxing/qrcode/decoder/Mode;->TERMINATOR:Lcom/google/zxing/qrcode/decoder/Mode;
return-object p0
.end method
.method public static valueOf(Ljava/lang/String;)Lcom/google/zxing/qrcode/decoder/Mode;
.locals 1
const-class v0, Lcom/google/zxing/qrcode/decoder/Mode;
.line 25
invoke-static {v0, p0}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p0
check-cast p0, Lcom/google/zxing/qrcode/decoder/Mode;
return-object p0
.end method
.method public static values()[Lcom/google/zxing/qrcode/decoder/Mode;
.locals 1
sget-object v0, Lcom/google/zxing/qrcode/decoder/Mode;->$VALUES:[Lcom/google/zxing/qrcode/decoder/Mode;
.line 25
invoke-virtual {v0}, [Lcom/google/zxing/qrcode/decoder/Mode;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [Lcom/google/zxing/qrcode/decoder/Mode;
return-object v0
.end method
# virtual methods
.method public getBits()I
.locals 1
iget v0, p0, Lcom/google/zxing/qrcode/decoder/Mode;->bits:I
return v0
.end method
.method public getCharacterCountBits(Lcom/google/zxing/qrcode/decoder/Version;)I
.locals 1
.line 86
invoke-virtual {p1}, Lcom/google/zxing/qrcode/decoder/Version;->getVersionNumber()I
move-result p1
const/16 v0, 0x9
if-gt p1, v0, :cond_0
const/4 p1, 0x0
goto :goto_0
:cond_0
const/16 v0, 0x1a
if-gt p1, v0, :cond_1
const/4 p1, 0x1
goto :goto_0
:cond_1
const/4 p1, 0x2
:goto_0
iget-object v0, p0, Lcom/google/zxing/qrcode/decoder/Mode;->characterCountBitsForVersions:[I
.line 95
aget p1, v0, p1
return p1
.end method

View File

@@ -0,0 +1,53 @@
.class public final Lcom/google/zxing/qrcode/decoder/Version$ECB;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/zxing/qrcode/decoder/Version;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "ECB"
.end annotation
# instance fields
.field public final count:I
.field public final dataCodewords:I
# direct methods
.method public constructor <init>(II)V
.locals 0
.line 223
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput p1, p0, Lcom/google/zxing/qrcode/decoder/Version$ECB;->count:I
iput p2, p0, Lcom/google/zxing/qrcode/decoder/Version$ECB;->dataCodewords:I
return-void
.end method
# virtual methods
.method public getCount()I
.locals 1
iget v0, p0, Lcom/google/zxing/qrcode/decoder/Version$ECB;->count:I
return v0
.end method
.method public getDataCodewords()I
.locals 1
iget v0, p0, Lcom/google/zxing/qrcode/decoder/Version$ECB;->dataCodewords:I
return v0
.end method

View File

@@ -0,0 +1,100 @@
.class public final Lcom/google/zxing/qrcode/decoder/Version$ECBlocks;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/zxing/qrcode/decoder/Version;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "ECBlocks"
.end annotation
# instance fields
.field public final ecBlocks:[Lcom/google/zxing/qrcode/decoder/Version$ECB;
.field public final ecCodewordsPerBlock:I
# direct methods
.method public varargs constructor <init>(I[Lcom/google/zxing/qrcode/decoder/Version$ECB;)V
.locals 0
.line 188
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput p1, p0, Lcom/google/zxing/qrcode/decoder/Version$ECBlocks;->ecCodewordsPerBlock:I
iput-object p2, p0, Lcom/google/zxing/qrcode/decoder/Version$ECBlocks;->ecBlocks:[Lcom/google/zxing/qrcode/decoder/Version$ECB;
return-void
.end method
# virtual methods
.method public getECBlocks()[Lcom/google/zxing/qrcode/decoder/Version$ECB;
.locals 1
iget-object v0, p0, Lcom/google/zxing/qrcode/decoder/Version$ECBlocks;->ecBlocks:[Lcom/google/zxing/qrcode/decoder/Version$ECB;
return-object v0
.end method
.method public getECCodewordsPerBlock()I
.locals 1
iget v0, p0, Lcom/google/zxing/qrcode/decoder/Version$ECBlocks;->ecCodewordsPerBlock:I
return v0
.end method
.method public getNumBlocks()I
.locals 5
iget-object v0, p0, Lcom/google/zxing/qrcode/decoder/Version$ECBlocks;->ecBlocks:[Lcom/google/zxing/qrcode/decoder/Version$ECB;
.line 199
array-length v1, v0
const/4 v2, 0x0
move v3, v2
:goto_0
if-ge v2, v1, :cond_0
aget-object v4, v0, v2
.line 200
invoke-virtual {v4}, Lcom/google/zxing/qrcode/decoder/Version$ECB;->getCount()I
move-result v4
add-int/2addr v3, v4
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_0
return v3
.end method
.method public getTotalECCodewords()I
.locals 2
iget v0, p0, Lcom/google/zxing/qrcode/decoder/Version$ECBlocks;->ecCodewordsPerBlock:I
.line 206
invoke-virtual {p0}, Lcom/google/zxing/qrcode/decoder/Version$ECBlocks;->getNumBlocks()I
move-result v1
mul-int/2addr v0, v1
return v0
.end method

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,42 @@
.class public final Lcom/google/zxing/qrcode/encoder/BlockPair;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field public final dataBytes:[B
.field public final errorCorrectionBytes:[B
# direct methods
.method public constructor <init>([B[B)V
.locals 0
.line 24
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lcom/google/zxing/qrcode/encoder/BlockPair;->dataBytes:[B
iput-object p2, p0, Lcom/google/zxing/qrcode/encoder/BlockPair;->errorCorrectionBytes:[B
return-void
.end method
# virtual methods
.method public getDataBytes()[B
.locals 1
iget-object v0, p0, Lcom/google/zxing/qrcode/encoder/BlockPair;->dataBytes:[B
return-object v0
.end method
.method public getErrorCorrectionBytes()[B
.locals 1
iget-object v0, p0, Lcom/google/zxing/qrcode/encoder/BlockPair;->errorCorrectionBytes:[B
return-object v0
.end method

View File

@@ -0,0 +1,229 @@
.class public final Lcom/google/zxing/qrcode/encoder/ByteMatrix;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field public final bytes:[[B
.field public final height:I
.field public final width:I
# direct methods
.method public constructor <init>(II)V
.locals 2
.line 33
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
filled-new-array {p2, p1}, [I
move-result-object v0
sget-object v1, Ljava/lang/Byte;->TYPE:Ljava/lang/Class;
.line 34
invoke-static {v1, v0}, Ljava/lang/reflect/Array;->newInstance(Ljava/lang/Class;[I)Ljava/lang/Object;
move-result-object v0
check-cast v0, [[B
iput-object v0, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->bytes:[[B
iput p1, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->width:I
iput p2, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->height:I
return-void
.end method
# virtual methods
.method public clear(B)V
.locals 4
iget-object v0, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->bytes:[[B
.line 71
array-length v1, v0
const/4 v2, 0x0
:goto_0
if-ge v2, v1, :cond_0
aget-object v3, v0, v2
.line 72
invoke-static {v3, p1}, Ljava/util/Arrays;->fill([BB)V
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_0
return-void
.end method
.method public get(II)B
.locals 1
iget-object v0, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->bytes:[[B
.line 48
aget-object p2, v0, p2
aget-byte p1, p2, p1
return p1
.end method
.method public getArray()[[B
.locals 1
iget-object v0, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->bytes:[[B
return-object v0
.end method
.method public getHeight()I
.locals 1
iget v0, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->height:I
return v0
.end method
.method public getWidth()I
.locals 1
iget v0, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->width:I
return v0
.end method
.method public set(III)V
.locals 1
iget-object v0, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->bytes:[[B
.line 63
aget-object p2, v0, p2
int-to-byte p3, p3
aput-byte p3, p2, p1
return-void
.end method
.method public set(IIZ)V
.locals 1
iget-object v0, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->bytes:[[B
.line 67
aget-object p2, v0, p2
int-to-byte p3, p3
aput-byte p3, p2, p1
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 7
.line 78
new-instance v0, Ljava/lang/StringBuilder;
iget v1, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->width:I
mul-int/lit8 v1, v1, 0x2
iget v2, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->height:I
mul-int/2addr v1, v2
add-int/lit8 v1, v1, 0x2
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(I)V
const/4 v1, 0x0
move v2, v1
:goto_0
iget v3, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->height:I
if-ge v2, v3, :cond_3
iget-object v3, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->bytes:[[B
.line 80
aget-object v3, v3, v2
move v4, v1
:goto_1
iget v5, p0, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->width:I
if-ge v4, v5, :cond_2
.line 82
aget-byte v5, v3, v4
if-eqz v5, :cond_1
const/4 v6, 0x1
if-eq v5, v6, :cond_0
const-string v5, " "
.line 90
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_2
:cond_0
const-string v5, " 1"
.line 87
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_2
:cond_1
const-string v5, " 0"
.line 84
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:goto_2
add-int/lit8 v4, v4, 0x1
goto :goto_1
:cond_2
const/16 v3, 0xa
.line 94
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 v2, v2, 0x1
goto :goto_0
.line 96
:cond_3
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,99 @@
.class public abstract synthetic Lcom/google/zxing/qrcode/encoder/Encoder$1;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/zxing/qrcode/encoder/Encoder;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1009
name = null
.end annotation
# static fields
.field public static final synthetic $SwitchMap$com$google$zxing$qrcode$decoder$Mode:[I
# direct methods
.method static constructor <clinit>()V
.locals 3
.line 506
invoke-static {}, Lcom/google/zxing/qrcode/decoder/Mode;->values()[Lcom/google/zxing/qrcode/decoder/Mode;
move-result-object v0
array-length v0, v0
new-array v0, v0, [I
sput-object v0, Lcom/google/zxing/qrcode/encoder/Encoder$1;->$SwitchMap$com$google$zxing$qrcode$decoder$Mode:[I
:try_start_0
sget-object v1, Lcom/google/zxing/qrcode/decoder/Mode;->NUMERIC:Lcom/google/zxing/qrcode/decoder/Mode;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x1
aput v2, v0, v1
:try_end_0
.catch Ljava/lang/NoSuchFieldError; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
:try_start_1
sget-object v0, Lcom/google/zxing/qrcode/encoder/Encoder$1;->$SwitchMap$com$google$zxing$qrcode$decoder$Mode:[I
sget-object v1, Lcom/google/zxing/qrcode/decoder/Mode;->ALPHANUMERIC:Lcom/google/zxing/qrcode/decoder/Mode;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x2
aput v2, v0, v1
:try_end_1
.catch Ljava/lang/NoSuchFieldError; {:try_start_1 .. :try_end_1} :catch_1
:catch_1
:try_start_2
sget-object v0, Lcom/google/zxing/qrcode/encoder/Encoder$1;->$SwitchMap$com$google$zxing$qrcode$decoder$Mode:[I
sget-object v1, Lcom/google/zxing/qrcode/decoder/Mode;->BYTE:Lcom/google/zxing/qrcode/decoder/Mode;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x3
aput v2, v0, v1
:try_end_2
.catch Ljava/lang/NoSuchFieldError; {:try_start_2 .. :try_end_2} :catch_2
:catch_2
:try_start_3
sget-object v0, Lcom/google/zxing/qrcode/encoder/Encoder$1;->$SwitchMap$com$google$zxing$qrcode$decoder$Mode:[I
sget-object v1, Lcom/google/zxing/qrcode/decoder/Mode;->KANJI:Lcom/google/zxing/qrcode/decoder/Mode;
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
const/4 v2, 0x4
aput v2, v0, v1
:try_end_3
.catch Ljava/lang/NoSuchFieldError; {:try_start_3 .. :try_end_3} :catch_3
:catch_3
return-void
.end method

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,695 @@
.class public abstract Lcom/google/zxing/qrcode/encoder/MaskUtil;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static applyMaskPenaltyRule1(Lcom/google/zxing/qrcode/encoder/ByteMatrix;)I
.locals 2
const/4 v0, 0x1
.line 41
invoke-static {p0, v0}, Lcom/google/zxing/qrcode/encoder/MaskUtil;->applyMaskPenaltyRule1Internal(Lcom/google/zxing/qrcode/encoder/ByteMatrix;Z)I
move-result v0
const/4 v1, 0x0
invoke-static {p0, v1}, Lcom/google/zxing/qrcode/encoder/MaskUtil;->applyMaskPenaltyRule1Internal(Lcom/google/zxing/qrcode/encoder/ByteMatrix;Z)I
move-result p0
add-int/2addr v0, p0
return v0
.end method
.method public static applyMaskPenaltyRule1Internal(Lcom/google/zxing/qrcode/encoder/ByteMatrix;Z)I
.locals 10
if-eqz p1, :cond_0
.line 197
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getHeight()I
move-result v0
goto :goto_0
:cond_0
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getWidth()I
move-result v0
:goto_0
if-eqz p1, :cond_1
.line 198
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getWidth()I
move-result v1
goto :goto_1
:cond_1
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getHeight()I
move-result v1
.line 199
:goto_1
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getArray()[[B
move-result-object p0
const/4 v2, 0x0
move v3, v2
move v4, v3
:goto_2
if-ge v3, v0, :cond_7
const/4 v5, -0x1
move v6, v2
move v7, v6
:goto_3
const/4 v8, 0x5
if-ge v6, v1, :cond_5
if-eqz p1, :cond_2
.line 204
aget-object v9, p0, v3
aget-byte v9, v9, v6
goto :goto_4
:cond_2
aget-object v9, p0, v6
aget-byte v9, v9, v3
:goto_4
if-ne v9, v5, :cond_3
add-int/lit8 v7, v7, 0x1
goto :goto_5
:cond_3
if-lt v7, v8, :cond_4
add-int/lit8 v7, v7, -0x2
add-int/2addr v4, v7
:cond_4
const/4 v5, 0x1
move v7, v5
move v5, v9
:goto_5
add-int/lit8 v6, v6, 0x1
goto :goto_3
:cond_5
if-lt v7, v8, :cond_6
add-int/lit8 v7, v7, -0x2
add-int/2addr v4, v7
:cond_6
add-int/lit8 v3, v3, 0x1
goto :goto_2
:cond_7
return v4
.end method
.method public static applyMaskPenaltyRule2(Lcom/google/zxing/qrcode/encoder/ByteMatrix;)I
.locals 10
.line 51
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getArray()[[B
move-result-object v0
.line 52
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getWidth()I
move-result v1
.line 53
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getHeight()I
move-result p0
const/4 v2, 0x0
move v3, v2
move v4, v3
:goto_0
add-int/lit8 v5, p0, -0x1
if-ge v3, v5, :cond_2
.line 55
aget-object v5, v0, v3
move v6, v2
:goto_1
add-int/lit8 v7, v1, -0x1
if-ge v6, v7, :cond_1
.line 57
aget-byte v7, v5, v6
add-int/lit8 v8, v6, 0x1
.line 58
aget-byte v9, v5, v8
if-ne v7, v9, :cond_0
add-int/lit8 v9, v3, 0x1
aget-object v9, v0, v9
aget-byte v6, v9, v6
if-ne v7, v6, :cond_0
aget-byte v6, v9, v8
if-ne v7, v6, :cond_0
add-int/lit8 v4, v4, 0x1
:cond_0
move v6, v8
goto :goto_1
:cond_1
add-int/lit8 v3, v3, 0x1
goto :goto_0
:cond_2
mul-int/lit8 v4, v4, 0x3
return v4
.end method
.method public static applyMaskPenaltyRule3(Lcom/google/zxing/qrcode/encoder/ByteMatrix;)I
.locals 10
.line 73
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getArray()[[B
move-result-object v0
.line 74
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getWidth()I
move-result v1
.line 75
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getHeight()I
move-result p0
const/4 v2, 0x0
move v3, v2
move v4, v3
:goto_0
if-ge v3, p0, :cond_5
move v5, v2
:goto_1
if-ge v5, v1, :cond_4
.line 78
aget-object v6, v0, v3
add-int/lit8 v7, v5, 0x6
const/4 v8, 0x1
if-ge v7, v1, :cond_1
.line 79
aget-byte v9, v6, v5
if-ne v9, v8, :cond_1
add-int/lit8 v9, v5, 0x1
aget-byte v9, v6, v9
if-nez v9, :cond_1
add-int/lit8 v9, v5, 0x2
aget-byte v9, v6, v9
if-ne v9, v8, :cond_1
add-int/lit8 v9, v5, 0x3
aget-byte v9, v6, v9
if-ne v9, v8, :cond_1
add-int/lit8 v9, v5, 0x4
aget-byte v9, v6, v9
if-ne v9, v8, :cond_1
add-int/lit8 v9, v5, 0x5
aget-byte v9, v6, v9
if-nez v9, :cond_1
aget-byte v7, v6, v7
if-ne v7, v8, :cond_1
add-int/lit8 v7, v5, -0x4
.line 87
invoke-static {v6, v7, v5}, Lcom/google/zxing/qrcode/encoder/MaskUtil;->isWhiteHorizontal([BII)Z
move-result v7
if-nez v7, :cond_0
add-int/lit8 v7, v5, 0x7
add-int/lit8 v9, v5, 0xb
invoke-static {v6, v7, v9}, Lcom/google/zxing/qrcode/encoder/MaskUtil;->isWhiteHorizontal([BII)Z
move-result v6
if-eqz v6, :cond_1
:cond_0
add-int/lit8 v4, v4, 0x1
:cond_1
add-int/lit8 v6, v3, 0x6
if-ge v6, p0, :cond_3
.line 90
aget-object v7, v0, v3
aget-byte v7, v7, v5
if-ne v7, v8, :cond_3
add-int/lit8 v7, v3, 0x1
aget-object v7, v0, v7
aget-byte v7, v7, v5
if-nez v7, :cond_3
add-int/lit8 v7, v3, 0x2
aget-object v7, v0, v7
aget-byte v7, v7, v5
if-ne v7, v8, :cond_3
add-int/lit8 v7, v3, 0x3
aget-object v7, v0, v7
aget-byte v7, v7, v5
if-ne v7, v8, :cond_3
add-int/lit8 v7, v3, 0x4
aget-object v7, v0, v7
aget-byte v7, v7, v5
if-ne v7, v8, :cond_3
add-int/lit8 v7, v3, 0x5
aget-object v7, v0, v7
aget-byte v7, v7, v5
if-nez v7, :cond_3
aget-object v6, v0, v6
aget-byte v6, v6, v5
if-ne v6, v8, :cond_3
add-int/lit8 v6, v3, -0x4
.line 98
invoke-static {v0, v5, v6, v3}, Lcom/google/zxing/qrcode/encoder/MaskUtil;->isWhiteVertical([[BIII)Z
move-result v6
if-nez v6, :cond_2
add-int/lit8 v6, v3, 0x7
add-int/lit8 v7, v3, 0xb
invoke-static {v0, v5, v6, v7}, Lcom/google/zxing/qrcode/encoder/MaskUtil;->isWhiteVertical([[BIII)Z
move-result v6
if-eqz v6, :cond_3
:cond_2
add-int/lit8 v4, v4, 0x1
:cond_3
add-int/lit8 v5, v5, 0x1
goto/16 :goto_1
:cond_4
add-int/lit8 v3, v3, 0x1
goto/16 :goto_0
:cond_5
mul-int/lit8 v4, v4, 0x28
return v4
.end method
.method public static applyMaskPenaltyRule4(Lcom/google/zxing/qrcode/encoder/ByteMatrix;)I
.locals 10
.line 134
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getArray()[[B
move-result-object v0
.line 135
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getWidth()I
move-result v1
.line 136
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getHeight()I
move-result v2
const/4 v3, 0x0
move v4, v3
move v5, v4
:goto_0
const/4 v6, 0x1
if-ge v4, v2, :cond_2
.line 138
aget-object v7, v0, v4
move v8, v3
:goto_1
if-ge v8, v1, :cond_1
.line 140
aget-byte v9, v7, v8
if-ne v9, v6, :cond_0
add-int/lit8 v5, v5, 0x1
:cond_0
add-int/lit8 v8, v8, 0x1
goto :goto_1
:cond_1
add-int/lit8 v4, v4, 0x1
goto :goto_0
.line 145
:cond_2
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getHeight()I
move-result v0
invoke-virtual {p0}, Lcom/google/zxing/qrcode/encoder/ByteMatrix;->getWidth()I
move-result p0
mul-int/2addr v0, p0
shl-int/lit8 p0, v5, 0x1
sub-int/2addr p0, v0
.line 146
invoke-static {p0}, Ljava/lang/Math;->abs(I)I
move-result p0
mul-int/lit8 p0, p0, 0xa
div-int/2addr p0, v0
mul-int/lit8 p0, p0, 0xa
return p0
.end method
.method public static getDataMaskBit(III)Z
.locals 1
const/4 v0, 0x1
packed-switch p0, :pswitch_data_0
.line 186
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "Invalid mask pattern: "
invoke-static {p0}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object p0
invoke-virtual {p2, p0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
invoke-direct {p1, p0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
:pswitch_0
mul-int p0, p2, p1
.line 183
rem-int/lit8 p0, p0, 0x3
add-int/2addr p2, p1
and-int/lit8 p1, p2, 0x1
add-int/2addr p0, p1
:goto_0
and-int/2addr p0, v0
goto :goto_1
:pswitch_1
mul-int/2addr p2, p1
and-int/lit8 p0, p2, 0x1
.line 179
rem-int/lit8 p2, p2, 0x3
add-int/2addr p0, p2
goto :goto_0
:pswitch_2
mul-int/2addr p2, p1
and-int/lit8 p0, p2, 0x1
.line 175
rem-int/lit8 p2, p2, 0x3
add-int/2addr p0, p2
goto :goto_1
.line 171
:pswitch_3
div-int/lit8 p2, p2, 0x2
div-int/lit8 p1, p1, 0x3
:pswitch_4
add-int/2addr p2, p1
:pswitch_5
and-int/lit8 p0, p2, 0x1
goto :goto_1
:pswitch_6
add-int/2addr p2, p1
.line 168
rem-int/lit8 p0, p2, 0x3
goto :goto_1
.line 165
:pswitch_7
rem-int/lit8 p0, p1, 0x3
:goto_1
if-nez p0, :cond_0
return v0
:cond_0
const/4 p0, 0x0
return p0
nop
:pswitch_data_0
.packed-switch 0x0
:pswitch_4
:pswitch_5
:pswitch_7
:pswitch_6
:pswitch_3
:pswitch_2
:pswitch_1
:pswitch_0
.end packed-switch
.end method
.method public static isWhiteHorizontal([BII)Z
.locals 3
const/4 v0, 0x0
.line 107
invoke-static {p1, v0}, Ljava/lang/Math;->max(II)I
move-result p1
.line 108
array-length v1, p0
invoke-static {p2, v1}, Ljava/lang/Math;->min(II)I
move-result p2
:goto_0
const/4 v1, 0x1
if-ge p1, p2, :cond_1
.line 110
aget-byte v2, p0, p1
if-ne v2, v1, :cond_0
return v0
:cond_0
add-int/lit8 p1, p1, 0x1
goto :goto_0
:cond_1
return v1
.end method
.method public static isWhiteVertical([[BIII)Z
.locals 3
const/4 v0, 0x0
.line 118
invoke-static {p2, v0}, Ljava/lang/Math;->max(II)I
move-result p2
.line 119
array-length v1, p0
invoke-static {p3, v1}, Ljava/lang/Math;->min(II)I
move-result p3
:goto_0
const/4 v1, 0x1
if-ge p2, p3, :cond_1
.line 121
aget-object v2, p0, p2
aget-byte v2, v2, p1
if-ne v2, v1, :cond_0
return v0
:cond_0
add-int/lit8 p2, p2, 0x1
goto :goto_0
:cond_1
return v1
.end method

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,190 @@
.class public final Lcom/google/zxing/qrcode/encoder/QRCode;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field public ecLevel:Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.field public maskPattern:I
.field public matrix:Lcom/google/zxing/qrcode/encoder/ByteMatrix;
.field public mode:Lcom/google/zxing/qrcode/decoder/Mode;
.field public version:Lcom/google/zxing/qrcode/decoder/Version;
# direct methods
.method public constructor <init>()V
.locals 1
.line 37
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, -0x1
iput v0, p0, Lcom/google/zxing/qrcode/encoder/QRCode;->maskPattern:I
return-void
.end method
.method public static isValidMaskPattern(I)Z
.locals 1
if-ltz p0, :cond_0
const/16 v0, 0x8
if-ge p0, v0, :cond_0
const/4 p0, 0x1
return p0
:cond_0
const/4 p0, 0x0
return p0
.end method
# virtual methods
.method public getMatrix()Lcom/google/zxing/qrcode/encoder/ByteMatrix;
.locals 1
iget-object v0, p0, Lcom/google/zxing/qrcode/encoder/QRCode;->matrix:Lcom/google/zxing/qrcode/encoder/ByteMatrix;
return-object v0
.end method
.method public setECLevel(Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;)V
.locals 0
iput-object p1, p0, Lcom/google/zxing/qrcode/encoder/QRCode;->ecLevel:Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
return-void
.end method
.method public setMaskPattern(I)V
.locals 0
iput p1, p0, Lcom/google/zxing/qrcode/encoder/QRCode;->maskPattern:I
return-void
.end method
.method public setMatrix(Lcom/google/zxing/qrcode/encoder/ByteMatrix;)V
.locals 0
iput-object p1, p0, Lcom/google/zxing/qrcode/encoder/QRCode;->matrix:Lcom/google/zxing/qrcode/encoder/ByteMatrix;
return-void
.end method
.method public setMode(Lcom/google/zxing/qrcode/decoder/Mode;)V
.locals 0
iput-object p1, p0, Lcom/google/zxing/qrcode/encoder/QRCode;->mode:Lcom/google/zxing/qrcode/decoder/Mode;
return-void
.end method
.method public setVersion(Lcom/google/zxing/qrcode/decoder/Version;)V
.locals 0
iput-object p1, p0, Lcom/google/zxing/qrcode/encoder/QRCode;->version:Lcom/google/zxing/qrcode/decoder/Version;
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 2
.line 63
new-instance v0, Ljava/lang/StringBuilder;
const/16 v1, 0xc8
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(I)V
const-string v1, "<<\n"
.line 64
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, " mode: "
.line 65
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/google/zxing/qrcode/encoder/QRCode;->mode:Lcom/google/zxing/qrcode/decoder/Mode;
.line 66
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, "\n ecLevel: "
.line 67
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/google/zxing/qrcode/encoder/QRCode;->ecLevel:Lcom/google/zxing/qrcode/decoder/ErrorCorrectionLevel;
.line 68
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, "\n version: "
.line 69
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/google/zxing/qrcode/encoder/QRCode;->version:Lcom/google/zxing/qrcode/decoder/Version;
.line 70
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, "\n maskPattern: "
.line 71
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lcom/google/zxing/qrcode/encoder/QRCode;->maskPattern:I
.line 72
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/google/zxing/qrcode/encoder/QRCode;->matrix:Lcom/google/zxing/qrcode/encoder/ByteMatrix;
if-nez v1, :cond_0
const-string v1, "\n matrix: null\n"
.line 74
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_0
:cond_0
const-string v1, "\n matrix:\n"
.line 76
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/google/zxing/qrcode/encoder/QRCode;->matrix:Lcom/google/zxing/qrcode/encoder/ByteMatrix;
.line 77
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
:goto_0
const-string v1, ">>\n"
.line 79
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 80
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method