001 package org.bridj.ann;
002
003 import java.lang.annotation.ElementType;
004 import java.lang.annotation.Retention;
005 import java.lang.annotation.RetentionPolicy;
006 import java.lang.annotation.Target;
007
008 /**
009 * Specify the raw native shared symbol for a function / method, including the mangling (C++, __stdcall...).<br>
010 * If you just need to change the name but don't know the exact mangled symbol, use {@link Name} instead.
011 * @author Olivier Chafik
012 */
013 @Target({ElementType.CONSTRUCTOR, ElementType.FIELD, ElementType.METHOD, ElementType.TYPE})
014 @Retention(RetentionPolicy.RUNTIME)
015 public @interface Symbol {
016 String[] value();
017 }