gpt4 book ai didi

java - LLVM vmkit java注释

转载 作者:行者123 更新时间:2023-12-01 14:28:27 25 4
gpt4 key购买 nike

我是Java新手。我想(用字符串)注释不同的 Java 变量,这些变量可以转换为 LLVM IR(并通过使用 llvm.var.annotation 或 llvm.global.annotations 获取它们)。对于 C/C++,我使用:

__attribute__((annotate("RED"))) static int a;

因此a 被注释为值“RED”。我的问题是,如何在 Java 中实现这一点(使用 vmkit for LLVM)?我想我必须使用 @,但我不知道我必须向 vmkit 添加哪些库以及 Java 中的注释如何工作?

谢谢您的回答!

最佳答案

在此链接中查找注释教程 http://docs.oracle.com/javase/tutorial/java/annotations/

您需要做的是定义注释而不是进行某种反射。这是@Red注释

package test;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;


@Retention(RetentionPolicy.RUNTIME)
public @interface Red {

}

and this how to use it

public class AnyClass {

@Red
public int a = 5;

}

here is a simple test to get the annotated field

package test;

import java.lang.annotation.Annotation;
import java.lang.reflect.Field;

public class TestClass {

/**
* @param args
*/
public static void main(String[] args) {
AnyClass anyClass = new AnyClass();
Class clasz = anyClass.getClass();
Field [] fArray = clasz.getFields();
Annotation[] anArray = clasz.getAnnotations();
for(Field f : fArray) {
System.out.println("wink" + f.getAnnotations()[0].annotationType());
}

}

}

关于java - LLVM vmkit java注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17001033/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com