jaroslav@106: /** jaroslav@106: * Back 2 Browser Bytecode Translator jaroslav@106: * Copyright (C) 2012 Jaroslav Tulach jaroslav@106: * jaroslav@106: * This program is free software: you can redistribute it and/or modify jaroslav@106: * it under the terms of the GNU General Public License as published by jaroslav@106: * the Free Software Foundation, version 2 of the License. jaroslav@106: * jaroslav@106: * This program is distributed in the hope that it will be useful, jaroslav@106: * but WITHOUT ANY WARRANTY; without even the implied warranty of jaroslav@106: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the jaroslav@106: * GNU General Public License for more details. jaroslav@106: * jaroslav@106: * You should have received a copy of the GNU General Public License jaroslav@106: * along with this program. Look for COPYING file in the top folder. jaroslav@106: * If not, see http://opensource.org/licenses/GPL-2.0. jaroslav@94: */ jaroslav@94: package org.apidesign.bck2brwsr.core; jaroslav@94: jaroslav@94: import java.lang.annotation.ElementType; jaroslav@94: import java.lang.annotation.Retention; jaroslav@94: import java.lang.annotation.RetentionPolicy; jaroslav@94: import java.lang.annotation.Target; jaroslav@94: jaroslav@94: /** Put this method on a method in case it should have a special jaroslav@94: * body in the JavaScript. jaroslav@94: * jaroslav@94: * @author Jaroslav Tulach jaroslav@94: */ jaroslav@94: @Retention(RetentionPolicy.CLASS) jaroslav@94: @Target({ ElementType.METHOD, ElementType.CONSTRUCTOR }) jaroslav@94: public @interface JavaScriptBody { jaroslav@94: /** Names of parameters for the method. jaroslav@94: * jaroslav@94: * jaroslav@94: * jaroslav@94: * @return array of the names of parameters for the method jaroslav@94: * in JavaScript jaroslav@94: */ jaroslav@94: public String[] args(); jaroslav@94: jaroslav@94: /** The actual body of the method in JavaScript. This string will be jaroslav@94: * put into generated header (ends with '{') and footer (ends with '}'). jaroslav@94: */ jaroslav@94: public String body(); jaroslav@94: }