2 * Back 2 Browser Bytecode Translator
3 * Copyright (C) 2012 Jaroslav Tulach <jaroslav.tulach@apidesign.org>
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, version 2 of the License.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program. Look for COPYING file in the top folder.
16 * If not, see http://opensource.org/licenses/GPL-2.0.
18 package org.apidesign.vm4brwsr;
20 import java.io.IOException;
21 import org.apidesign.vm4brwsr.ByteCodeParser.ClassData;
22 import org.apidesign.vm4brwsr.ByteCodeParser.FieldData;
23 import org.apidesign.vm4brwsr.ByteCodeParser.MethodData;
25 abstract class ObfuscationDelegate {
26 static ObfuscationDelegate NULL =
27 new ObfuscationDelegate() {
29 public void exportJSProperty(Appendable out,
36 public void exportClass(Appendable out,
44 public void exportMethod(Appendable out,
47 MethodData methodData)
52 public void exportField(Appendable out,
60 public abstract void exportJSProperty(
61 Appendable out, String destObject, String propertyName)
64 public abstract void exportClass(
65 Appendable out, String destObject, String mangledName,
66 ClassData classData) throws IOException;
68 public abstract void exportMethod(
69 Appendable out, String destObject, String mangledName,
70 MethodData methodData) throws IOException;
72 public abstract void exportField(
73 Appendable out, String destObject, String mangledName,
74 FieldData fieldData) throws IOException;