/* --------------------------------------------------------- * * __________ D E L T A S C R I P T * * (_________() * * / === / - A fast, dynamic scripting language * * | == | - Version 4.13.11.0 * * / === / - Developed by Adam R. Nelson * * | = = | - 2011-2013 * * / === / - Distributed under GNU LGPL v3 * * (________() - http://github.com/ar-nelson/deltascript * * * * --------------------------------------------------------- */ package com.sector91.delta.script.annotations; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; import com.sector91.delta.script.module.ModuleLoader; /** * <p>Lists the platforms that a module supports. This annotation must be used * with the {@link DSModule} annotation; it is meaningless otherwise!</p> * * <p>A module is considered supported if any one of the platform names * listed in this annotation is contained in the set of platform tags returned * by {@link ModuleLoader#getPlatformTags()} for the current platform's * {@link ModuleLoader}. To require multiple platform tags to be present at * once, join them with a "+". So, for example, {@code "windows"} would * indicate that this module is supported on any Windows machine, while {@code * "windows+applet"} would indicate that this module is only supported in the * context of a Java applet running on a Windows machine.</p> * * @author Adam R. Nelson * @version 4.13.11.0 * @since 3.12.2.0 */ @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.TYPE) public @interface DSModulePlatforms {String value();}