package openblocks.api;

import java.lang.annotation.*;

/**
 * Static variables marked with this annotation will be filled with instance
 * of requested API (defined by type of variable).
 *
 * All variables must have type that implements {@link IApiInterface}.
 * If requested type is not provided by OpenPeripheralAddons, variable will not be set.
 *
 * All variables should be filled in 'init'. Value in 'preInit' is undefined.
 *
 */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface ApiHolder {}

@@ -192,40 +192,194 @@
 %0A * 
-All variables must have type tha
+Static methods marked with this annotation will be called with instance of requested API.%0A * Methods must have single argument, which will be used to select API.%0A *%0A * All used types mus
 t im
@@ -594,16 +594,18 @@
 @Target(
+%7B 
 ElementT
@@ -613,16 +613,38 @@
 pe.FIELD
+, ElementType.METHOD %7D
 )%0A@Reten

Allow API annotation to be placed on methods, expand docs