UNPKG

@specs-feup/lara

Version:

A js port of the popular framework for building source-to-source compilers

139 lines 4.96 kB
import java from "java"; export const NodeJavaPrefix = "nodeJava_"; export default class JavaTypes { static typeMap = new Map(); /** * @beta Only for very exceptional cases. Should not be used directly, use the static methods instead. * * @param javaTypeName - String with the name of the Java type to be imported into the javascript environment * @returns A Java object */ static getType(javaTypeName) { if (JavaTypes.typeMap.has(javaTypeName)) { return JavaTypes.typeMap.get(javaTypeName); } const javaType = java.import(javaTypeName); JavaTypes.typeMap.set(javaTypeName, javaType); return javaType; } static instanceOf(value, javaTypeName) { return java.instanceOf(value, javaTypeName); } static isJavaObject(value) { return (typeof value === "object" && value !== null && Object.getPrototypeOf(value).constructor.name.startsWith(NodeJavaPrefix)); } static get LaraI() { return JavaTypes.getType("larai.LaraI"); } static get LaraApiTool() { return JavaTypes.getType("pt.up.fe.specs.lara.LaraApiTools"); } static get LaraSystemTools() { return JavaTypes.getType("pt.up.fe.specs.lara.LaraSystemTools"); } static get LaraCli() { return JavaTypes.getType("org.lara.interpreter.cli.LaraCli"); } static get Uuid() { return JavaTypes.getType("java.util.UUID"); } static get Gprofer() { return JavaTypes.getType("pt.up.fe.specs.gprofer.Gprofer"); } static get JoinPoint() { return JavaTypes.getType("org.lara.interpreter.weaver.interf.JoinPoint"); } static get SpecsStrings() { return JavaTypes.getType("pt.up.fe.specs.util.SpecsStrings"); } static get SpecsSystem() { return JavaTypes.getType("pt.up.fe.specs.util.SpecsSystem"); } static get ApacheStrings() { return JavaTypes.getType("pt.up.fe.specs.lang.ApacheStrings"); } static get StringLines() { return JavaTypes.getType("pt.up.fe.specs.util.utilities.StringLines"); } static get LaraIo() { return JavaTypes.getType("org.lara.interpreter.api.LaraIo"); } static get SpecsIo() { return JavaTypes.getType("pt.up.fe.specs.util.SpecsIo"); } static get System() { return JavaTypes.getType("java.lang.System"); } static get File() { return JavaTypes.getType("java.io.File"); } static get Collections() { return JavaTypes.getType("java.util.Collections"); } static get Diff() { return JavaTypes.getType("pt.up.fe.specs.lara.util.JavaDiffHelper"); } static get XStreamUtils() { return JavaTypes.getType("org.suikasoft.XStreamPlus.XStreamUtils"); } static get Object() { return JavaTypes.getType("java.lang.Object"); } static get CsvReader() { return JavaTypes.getType("pt.up.fe.specs.util.csv.CsvReader"); } static get CsvField() { return JavaTypes.getType("pt.up.fe.specs.util.csv.CsvField"); } static get CsvWriter() { return JavaTypes.getType("pt.up.fe.specs.util.csv.CsvWriter"); } static get DataStore() { return JavaTypes.getType("org.suikasoft.jOptions.Interfaces.DataStore"); } static get JOptionsUtils() { return JavaTypes.getType("org.suikasoft.jOptions.JOptionsUtils"); } static get WeaverEngine() { return JavaTypes.getType("org.lara.interpreter.weaver.interf.WeaverEngine"); } static get LaraiKeys() { return JavaTypes.getType("org.lara.interpreter.joptions.config.interpreter.LaraiKeys"); } static get FileList() { return JavaTypes.getType("org.lara.interpreter.joptions.keys.FileList"); } static get OptionalFile() { return JavaTypes.getType("org.lara.interpreter.joptions.keys.OptionalFile"); } static get LaraIUtils() { return JavaTypes.getType("org.lara.interpreter.utils.LaraIUtils"); } static get WeaverLauncher() { return JavaTypes.getType("pt.up.fe.specs.lara.WeaverLauncher"); } static get ArrayList() { return JavaTypes.getType("java.util.ArrayList"); } static get HashMap() { return JavaTypes.getType("java.util.HashMap"); } static get SpecsPlatforms() { return JavaTypes.getType("pt.up.fe.specs.lang.SpecsPlatforms"); } static get Runtime() { return JavaTypes.getType("java.lang.Runtime"); } static get ProcessOutputAsString() { return JavaTypes.getType("pt.up.fe.specs.util.system.ProcessOutputAsString"); } static get ProgressCounter() { return JavaTypes.getType("pt.up.fe.specs.util.utilities.ProgressCounter"); } static get LineStream() { return JavaTypes.getType("pt.up.fe.specs.util.utilities.LineStream"); } } //# sourceMappingURL=JavaTypes.js.map