!include once #1034831 // Gazelle 22 Function Include for Testing svoid test_leftArrowScript_classDefs() { var test = new TestFunctionValues(l1 leftArrowVerbose); // define a class with two fields S classPrefix = "scriptClasses."; LASClassLoader cl = new LASClassLoader(mc().getClassLoader()); embedded Class makeClass() { new GazelleV_LeftArrowScriptParser parser; parser.classDefPrefix(classPrefix); parser.lasClassLoader(cl); ret (Class) leftArrowVerbose(parser, [[ class MyClass { a: String b: String } ]]); } Class c = makeClass(); assertStartsWith(print(c.getName()), classPrefix + "MyClass" + "_"); // compile same source again - make sure we get the same class object assertSame(c, makeClass()); assertEqualsVerbose("Number of fields", 2, l(getDeclaredFields_cached(c))); assertEqualsVerbose("Type of a", S.class, getField(c, "a").getType()); assertEqualsVerbose("Type of b", S.class, getField(c, "b").getType()); }