moved the examples

git-svn-id: https://smali.googlecode.com/svn/trunk@79 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
This commit is contained in:
JesusFreke@JesusFreke.com
2009-06-04 04:39:25 +00:00
parent 20f261138f
commit c2b3b1457a
14 changed files with 1285 additions and 0 deletions

View File

@ -0,0 +1,6 @@
.class public L10;
.super Ljava/lang/Object;
.method public static 11()V
return-void
.end method

View File

@ -0,0 +1,67 @@
.class public abstract interface annotation LAnnotationWithValues;
.super Ljava/lang/Object;
.implements Ljava/lang/annotation/Annotation;
.method public abstract booleanValue()Z
.end method
.method public abstract byteValue()B
.end method
.method public abstract charValue()C
.end method
.method public abstract shortValue()S
.end method
.method public abstract intValue()I
.end method
.method public abstract longValue()J
.end method
.method public abstract floatValue()F
.end method
.method public abstract doubleValue()D
.end method
.method public abstract stringValue()Ljava/lang/String;
.end method
.method public abstract subAnnotationValue()LSubAnnotation;
.end method
.method public abstract typeValue()Ljava/lang/Class;
.end method
.method public abstract methodValue()Ljava/lang/reflect/Method;
.end method
;dalvik doesn't seem to like field values
;.method public abstract fieldValue()Ljava/lang/reflect/Field;
;.end method
.method public abstract enumValue()LEnum;
.end method
.annotation system Ldalvik/annotation/AnnotationDefault;
value = .subannotation LAnnotationWithValues;
booleanValue = false
byteValue = 1t
charValue = '2'
shortValue = 3s
intValue = 4
longValue = 5l
floatValue = 6.0f
doubleValue = 7.0
stringValue = "8"
subAnnotationValue = .subannotation LSubAnnotation;
stringValue = "9"
.end subannotation
typeValue = L10;
methodValue = L10;->11()V
enumValue = .enum LEnum;->12:LEnum;
.end subannotation
.end annotation

View File

@ -0,0 +1,52 @@
.class public final enum LEnum;
.super Ljava/lang/Enum;
.field private static final synthetic $VALUES:[LEnum;
.field public static final enum 12:LEnum;
.method static constructor <clinit>()V
.registers 4
const/4 v3, 1
const/4 v2, 0
new-instance v0, LEnum;
const-string v1, "12"
invoke-direct {v0, v1, v2}, LEnum;-><init>(Ljava/lang/String;I)V
sput-object v0, LEnum;->12:LEnum;
const/4 v0, 1
new-array v0, v0, [LEnum;
sget-object v1, LEnum;->12:LEnum;
aput-object v1, v0, v2
sput-object v0, LEnum;->$VALUES:[LEnum;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.registers 3
invoke-direct {v0, v1, v2}, Ljava/lang/Enum;-><init>(Ljava/lang/String;I)V
return-void
.end method
.method public static valueOf(Ljava/lang/String;)LEnum;
.registers 2
const-class v0, LEnum;
invoke-static {v0, v1}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object v1
check-cast v1, LEnum;
return-object v1
.end method
.method public static values()[LEnum;
.registers 1
sget-object v0, LEnum;->$VALUES:[LEnum;
invoke-virtual {v0}, [LEnum;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, [LEnum;
return-object v0
.end method

View File

@ -0,0 +1,25 @@
.class public LMain;
.super Ljava/lang/Object;
;expected output:
;@AnnotationWithValues(booleanValue=false, byteValue=1, charValue=2, doubleValue=7.0, enumValue=12, floatValue=6.0, intValue=4, longValue=5, methodValue=public static void 10.11(), shortValue=3, stringValue=8, subAnnotationValue=@SubAnnotation(stringValue=9), typeValue=class 10)
.method public static main([Ljava/lang/String;)V
.registers 3
sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
const-class v1, LMain;
const-class v2, LAnnotationWithValues;
invoke-virtual {v1, v2}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/Object;)V
return-void
.end method
.annotation runtime LAnnotationWithValues;
.end annotation

View File

@ -0,0 +1,6 @@
.class public abstract interface annotation LSubAnnotation;
.super Ljava/lang/Object;
.implements Ljava/lang/annotation/Annotation;
.method public abstract stringValue()Ljava/lang/String;
.end method