001: /***
002: * ASM: a very small and fast Java bytecode manipulation framework
003: * Copyright (c) 2000-2005 INRIA, France Telecom
004: * All rights reserved.
005: *
006: * Redistribution and use in source and binary forms, with or without
007: * modification, are permitted provided that the following conditions
008: * are met:
009: * 1. Redistributions of source code must retain the above copyright
010: * notice, this list of conditions and the following disclaimer.
011: * 2. Redistributions in binary form must reproduce the above copyright
012: * notice, this list of conditions and the following disclaimer in the
013: * documentation and/or other materials provided with the distribution.
014: * 3. Neither the name of the copyright holders nor the names of its
015: * contributors may be used to endorse or promote products derived from
016: * this software without specific prior written permission.
017: *
018: * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
019: * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
020: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
021: * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
022: * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
023: * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
024: * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
025: * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
026: * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
027: * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
028: * THE POSSIBILITY OF SUCH DAMAGE.
029: */package org.objectweb.asm.jip.commons;
030:
031: import org.objectweb.asm.jip.AnnotationVisitor;
032: import org.objectweb.asm.jip.Attribute;
033: import org.objectweb.asm.jip.ClassVisitor;
034: import org.objectweb.asm.jip.FieldVisitor;
035: import org.objectweb.asm.jip.Label;
036: import org.objectweb.asm.jip.MethodVisitor;
037:
038: /**
039: * An empty implementation of the ASM visitor interfaces.
040: *
041: * @author Eric Bruneton
042: */
043: public class EmptyVisitor implements ClassVisitor, FieldVisitor,
044: MethodVisitor, AnnotationVisitor {
045:
046: public void visit(int version, int access, String name,
047: String signature, String super Name, String[] interfaces) {
048: }
049:
050: public void visitSource(String source, String debug) {
051: }
052:
053: public void visitOuterClass(String owner, String name, String desc) {
054: }
055:
056: public AnnotationVisitor visitAnnotation(String desc,
057: boolean visible) {
058: return this ;
059: }
060:
061: public void visitAttribute(Attribute attr) {
062: }
063:
064: public void visitInnerClass(String name, String outerName,
065: String innerName, int access) {
066: }
067:
068: public FieldVisitor visitField(int access, String name,
069: String desc, String signature, Object value) {
070: return this ;
071: }
072:
073: public MethodVisitor visitMethod(int access, String name,
074: String desc, String signature, String[] exceptions) {
075: return this ;
076: }
077:
078: public void visitEnd() {
079: }
080:
081: public AnnotationVisitor visitAnnotationDefault() {
082: return this ;
083: }
084:
085: public AnnotationVisitor visitParameterAnnotation(int parameter,
086: String desc, boolean visible) {
087: return this ;
088: }
089:
090: public void visitCode() {
091: }
092:
093: public void visitInsn(int opcode) {
094: }
095:
096: public void visitIntInsn(int opcode, int operand) {
097: }
098:
099: public void visitVarInsn(int opcode, int var) {
100: }
101:
102: public void visitTypeInsn(int opcode, String desc) {
103: }
104:
105: public void visitFieldInsn(int opcode, String owner, String name,
106: String desc) {
107: }
108:
109: public void visitMethodInsn(int opcode, String owner, String name,
110: String desc) {
111: }
112:
113: public void visitJumpInsn(int opcode, Label label) {
114: }
115:
116: public void visitLabel(Label label) {
117: }
118:
119: public void visitLdcInsn(Object cst) {
120: }
121:
122: public void visitIincInsn(int var, int increment) {
123: }
124:
125: public void visitTableSwitchInsn(int min, int max, Label dflt,
126: Label labels[]) {
127: }
128:
129: public void visitLookupSwitchInsn(Label dflt, int keys[],
130: Label labels[]) {
131: }
132:
133: public void visitMultiANewArrayInsn(String desc, int dims) {
134: }
135:
136: public void visitTryCatchBlock(Label start, Label end,
137: Label handler, String type) {
138: }
139:
140: public void visitLocalVariable(String name, String desc,
141: String signature, Label start, Label end, int index) {
142: }
143:
144: public void visitLineNumber(int line, Label start) {
145: }
146:
147: public void visitMaxs(int maxStack, int maxLocals) {
148: }
149:
150: public void visit(String name, Object value) {
151: }
152:
153: public void visitEnum(String name, String desc, String value) {
154: }
155:
156: public AnnotationVisitor visitAnnotation(String name, String desc) {
157: return this ;
158: }
159:
160: public AnnotationVisitor visitArray(String name) {
161: return this;
162: }
163: }
|