1 /******************************************************************************* 2 * Copyright (c) 2009, 2015 Mountainminds GmbH & Co. KG and Contributors 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Eclipse Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/epl-v10.html 7 * 8 * Contributors: 9 * Marc R. Hoffmann - initial API and implementation 10 * 11 *******************************************************************************/ 12 package org.jacoco.report; 13 14 /** 15 * Interface to create programming language specific names from VM names. 16 */ 17 public interface ILanguageNames { 18 19 /** 20 * Calculates the language specific name of a package. 21 * 22 * @param vmname 23 * vm name of a package 24 * @return language specific notation for the package 25 */ getPackageName(String vmname)26 public String getPackageName(String vmname); 27 28 /** 29 * Calculates the language specific name of a class. 30 * 31 * @param vmname 32 * vm name of a class 33 * @param vmsignature 34 * vm signature of the class (may be <code>null</code>) 35 * @param vmsuperclass 36 * vm name of the superclass of the class (may be 37 * <code>null</code>) 38 * @param vminterfaces 39 * vm names of interfaces of the class (may be <code>null</code>) 40 * @return language specific notation of the class 41 */ getClassName(String vmname, String vmsignature, String vmsuperclass, String[] vminterfaces)42 public String getClassName(String vmname, String vmsignature, 43 String vmsuperclass, String[] vminterfaces); 44 45 /** 46 * Calculates the language specific qualified name of a class. 47 * 48 * @param vmname 49 * vm name of a class 50 * @return language specific qualified notation of the class 51 */ getQualifiedClassName(String vmname)52 public String getQualifiedClassName(String vmname); 53 54 /** 55 * Calculates the language specific name of a method. 56 * 57 * @param vmclassname 58 * vm name of a containing class 59 * @param vmmethodname 60 * vm name of the method 61 * @param vmdesc 62 * vm method descriptor 63 * @param vmsignature 64 * vm signature of the method (may be <code>null</code>) 65 * @return language specific notation for the method 66 */ getMethodName(String vmclassname, String vmmethodname, String vmdesc, String vmsignature)67 public String getMethodName(String vmclassname, String vmmethodname, 68 String vmdesc, String vmsignature); 69 70 /** 71 * Calculates the language specific fully qualified name of a method. 72 * 73 * @param vmclassname 74 * vm name of a containing class 75 * @param vmmethodname 76 * vm name of the method 77 * @param vmdesc 78 * vm method descriptor 79 * @param vmsignature 80 * vm signature of the method (may be <code>null</code>) 81 * @return language specific notation for the method 82 */ getQualifiedMethodName(String vmclassname, String vmmethodname, String vmdesc, String vmsignature)83 public String getQualifiedMethodName(String vmclassname, 84 String vmmethodname, String vmdesc, String vmsignature); 85 86 } 87