• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /**
2  * ASM: a very small and fast Java bytecode manipulation framework Copyright (c) 2000-2011 INRIA,
3  * France Telecom All rights reserved.
4  *
5  * <p>Redistribution and use in source and binary forms, with or without modification, are permitted
6  * provided that the following conditions are met: 1. Redistributions of source code must retain the
7  * above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions
8  * in binary form must reproduce the above copyright notice, this list of conditions and the
9  * following disclaimer in the documentation and/or other materials provided with the distribution.
10  * 3. Neither the name of the copyright holders nor the names of its contributors may be used to
11  * endorse or promote products derived from this software without specific prior written permission.
12  *
13  * <p>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
14  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
15  * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
16  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
17  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
18  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
19  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
20  * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
21  */
22 package org.objectweb.asm.util;
23 
24 import java.util.Map;
25 import org.objectweb.asm.Label;
26 
27 /**
28  * An {@link org.objectweb.asm.Attribute} that can print a readable representation of itself.
29  *
30  * @author Eugene Kuleshov
31  */
32 public interface TextifierSupport {
33 
34   /**
35    * Generates a human readable representation of this attribute.
36    *
37    * @param outputBuilder where the human representation of this attribute must be appended.
38    * @param labelNames the human readable names of the labels.
39    */
textify(StringBuilder outputBuilder, Map<Label, String> labelNames)40   void textify(StringBuilder outputBuilder, Map<Label, String> labelNames);
41 }
42