< prev index next >

test/jdk/com/sun/tools/jextract/JextractToolRunner.java

Print this page




  29 import java.net.URL;
  30 import java.net.URLClassLoader;
  31 import java.nio.file.FileVisitResult;
  32 import java.nio.file.Files;
  33 import java.nio.file.Path;
  34 import java.nio.file.Paths;
  35 import java.nio.file.SimpleFileVisitor;
  36 import java.nio.file.attribute.BasicFileAttributes;
  37 import java.util.Objects;
  38 import java.util.spi.ToolProvider;
  39 
  40 import static org.testng.Assert.assertEquals;
  41 import static org.testng.Assert.assertNotEquals;
  42 import static org.testng.Assert.assertNotNull;
  43 import static org.testng.Assert.assertTrue;
  44 import static org.testng.Assert.fail;
  45 
  46 public class JextractToolRunner {
  47     // utilities to avoid hard-coding generated class, interface names everywhere
  48     public static String headerInterfaceName(String filename) {
  49         int ext = filename.lastIndexOf('.');
  50         return ext != -1 ? filename.substring(0, ext) : filename;
  51     }
  52 
  53     public static String staticForwarderName(String filename) {
  54         return headerInterfaceName(filename) + "_h";


  55     }
  56 
  57     // struct, enum and callback interfaces are nested types of header interface
  58     public static String structInterfaceName(String headerFileName, String structName) {
  59         return headerInterfaceName(headerFileName) + "$" + structName;
  60     }
  61 
  62     public static String enumInterfaceName(String headerFileName, String enumName) {
  63         return headerInterfaceName(headerFileName) + "$" + enumName;
  64     }
  65 
  66     public static String callbackInterfaceName(String headerFileName, String fiName) {
  67         return headerInterfaceName(headerFileName) + "$" + fiName;
  68     }
  69 
  70     public static String enumForwarderInterfaceName(String headerFileName, String enumName) {
  71         return staticForwarderName(headerFileName) + "$" + enumName;
  72     }
  73 
  74     private static final ToolProvider JEXTRACT_TOOL = ToolProvider.findFirst("jextract")




  29 import java.net.URL;
  30 import java.net.URLClassLoader;
  31 import java.nio.file.FileVisitResult;
  32 import java.nio.file.Files;
  33 import java.nio.file.Path;
  34 import java.nio.file.Paths;
  35 import java.nio.file.SimpleFileVisitor;
  36 import java.nio.file.attribute.BasicFileAttributes;
  37 import java.util.Objects;
  38 import java.util.spi.ToolProvider;
  39 
  40 import static org.testng.Assert.assertEquals;
  41 import static org.testng.Assert.assertNotEquals;
  42 import static org.testng.Assert.assertNotNull;
  43 import static org.testng.Assert.assertTrue;
  44 import static org.testng.Assert.fail;
  45 
  46 public class JextractToolRunner {
  47     // utilities to avoid hard-coding generated class, interface names everywhere
  48     public static String headerInterfaceName(String filename) {
  49         return staticForwarderName(filename) + "_";

  50     }
  51 
  52     public static String staticForwarderName(String filename) {
  53         int ext = filename.lastIndexOf('.');
  54         String name = ext != -1 ? filename.substring(0, ext) : filename;
  55         return name + "_h";
  56     }
  57 
  58     // struct, enum and callback interfaces are nested types of header interface
  59     public static String structInterfaceName(String headerFileName, String structName) {
  60         return headerInterfaceName(headerFileName) + "$" + structName;
  61     }
  62 
  63     public static String enumInterfaceName(String headerFileName, String enumName) {
  64         return headerInterfaceName(headerFileName) + "$" + enumName;
  65     }
  66 
  67     public static String callbackInterfaceName(String headerFileName, String fiName) {
  68         return headerInterfaceName(headerFileName) + "$" + fiName;
  69     }
  70 
  71     public static String enumForwarderInterfaceName(String headerFileName, String enumName) {
  72         return staticForwarderName(headerFileName) + "$" + enumName;
  73     }
  74 
  75     private static final ToolProvider JEXTRACT_TOOL = ToolProvider.findFirst("jextract")


< prev index next >