Compare commits
No commits in common. "targetBytecode" and "bigRefactoring" have entirely different histories.
targetByte
...
bigRefacto
@ -1,25 +0,0 @@
|
|||||||
name: Build and Test with Maven
|
|
||||||
on: [push]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
Build-and-test-with-Maven:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Check out repository code
|
|
||||||
uses: actions/checkout@v3
|
|
||||||
- name: Install maven
|
|
||||||
run: |
|
|
||||||
apt update
|
|
||||||
apt install -y maven
|
|
||||||
- name: Install java
|
|
||||||
uses: actions/setup-java@v4
|
|
||||||
with:
|
|
||||||
distribution: 'temurin'
|
|
||||||
java-version: '21'
|
|
||||||
cache: 'maven'
|
|
||||||
- name: Compile project
|
|
||||||
run: |
|
|
||||||
mvn compile
|
|
||||||
- name: Run tests
|
|
||||||
run: |
|
|
||||||
mvn test
|
|
File diff suppressed because it is too large
Load Diff
31
pom.xml
31
pom.xml
@ -28,15 +28,15 @@ http://maven.apache.org/maven-v4_0_0.xsd">
|
|||||||
<artifactId>commons-io</artifactId>
|
<artifactId>commons-io</artifactId>
|
||||||
<version>2.6</version>
|
<version>2.6</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
|
||||||
<groupId>io.github.classgraph</groupId>
|
|
||||||
<artifactId>classgraph</artifactId>
|
|
||||||
<version>4.8.172</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.google.guava</groupId>
|
<groupId>com.google.guava</groupId>
|
||||||
<artifactId>guava</artifactId>
|
<artifactId>guava</artifactId>
|
||||||
<version>33.2.0-jre</version>
|
<version>22.0</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.reflections</groupId>
|
||||||
|
<artifactId>reflections</artifactId>
|
||||||
|
<version>0.9.11</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<!-- https://mvnrepository.com/artifact/org.ow2.asm/asm -->
|
<!-- https://mvnrepository.com/artifact/org.ow2.asm/asm -->
|
||||||
<dependency>
|
<dependency>
|
||||||
@ -54,8 +54,12 @@ http://maven.apache.org/maven-v4_0_0.xsd">
|
|||||||
<version>3.11.0</version>
|
<version>3.11.0</version>
|
||||||
<configuration>
|
<configuration>
|
||||||
<compilerArgs>--enable-preview</compilerArgs>
|
<compilerArgs>--enable-preview</compilerArgs>
|
||||||
<source>21</source>
|
<<<<<<< HEAD
|
||||||
<target>21</target>
|
<source>20</source>
|
||||||
|
<target>20</target>
|
||||||
|
=======
|
||||||
|
<release>20</release>
|
||||||
|
>>>>>>> patternMatching
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
<plugin>
|
<plugin>
|
||||||
@ -63,14 +67,9 @@ http://maven.apache.org/maven-v4_0_0.xsd">
|
|||||||
<artifactId>maven-surefire-plugin</artifactId>
|
<artifactId>maven-surefire-plugin</artifactId>
|
||||||
<version>3.1.0</version>
|
<version>3.1.0</version>
|
||||||
<configuration>
|
<configuration>
|
||||||
<redirectTestOutputToFile>true</redirectTestOutputToFile>
|
|
||||||
<reportsDirectory>${project.build.directory}/test-reports</reportsDirectory>
|
|
||||||
<argLine>--enable-preview</argLine>
|
<argLine>--enable-preview</argLine>
|
||||||
<trimStackTrace>false</trimStackTrace>
|
|
||||||
<excludes>
|
<excludes>
|
||||||
<exclude>**/JavaTXCompilerTest.java</exclude>
|
<exclude>**/JavaTXCompilerTest.java</exclude>
|
||||||
<exclude>**/AllgemeinTest.java</exclude>
|
|
||||||
<exclude>**/syntaxtreegenerator/*.java</exclude>
|
|
||||||
</excludes>
|
</excludes>
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
@ -90,7 +89,6 @@ http://maven.apache.org/maven-v4_0_0.xsd">
|
|||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-jar-plugin</artifactId>
|
<artifactId>maven-jar-plugin</artifactId>
|
||||||
<version>3.3.0</version>
|
|
||||||
<configuration>
|
<configuration>
|
||||||
<archive>
|
<archive>
|
||||||
<manifest>
|
<manifest>
|
||||||
@ -129,6 +127,11 @@ http://maven.apache.org/maven-v4_0_0.xsd">
|
|||||||
</repository>
|
</repository>
|
||||||
</repositories>
|
</repositories>
|
||||||
<properties>
|
<properties>
|
||||||
|
<<<<<<< HEAD
|
||||||
|
<maven.compiler.source>20</maven.compiler.source>
|
||||||
|
<maven.compiler.target>20</maven.compiler.target>
|
||||||
|
=======
|
||||||
|
>>>>>>> patternMatching
|
||||||
<mainClass>de.dhbwstuttgart.core.ConsoleInterface</mainClass>
|
<mainClass>de.dhbwstuttgart.core.ConsoleInterface</mainClass>
|
||||||
</properties>
|
</properties>
|
||||||
<distributionManagement>
|
<distributionManagement>
|
||||||
|
@ -1,10 +0,0 @@
|
|||||||
public class Bar{
|
|
||||||
|
|
||||||
void visit(Object o){
|
|
||||||
System.out.println("Object");
|
|
||||||
}
|
|
||||||
|
|
||||||
void visit(Bla f){
|
|
||||||
System.out.println("Foo");
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,9 +0,0 @@
|
|||||||
public class Box<A> {
|
|
||||||
|
|
||||||
A a;
|
|
||||||
|
|
||||||
public Box() { }
|
|
||||||
public Box(A a) {
|
|
||||||
//this.a = a;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,22 +0,0 @@
|
|||||||
class Pair<U, T> {
|
|
||||||
U a;
|
|
||||||
T b;
|
|
||||||
Pair(U x, T y) {
|
|
||||||
a = x; b = y;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
class Complex {
|
|
||||||
m(b) {
|
|
||||||
var c = b;
|
|
||||||
var d = c;
|
|
||||||
var e;
|
|
||||||
d = e;
|
|
||||||
var r1 = e;
|
|
||||||
var f = e;
|
|
||||||
var g;
|
|
||||||
f = g;
|
|
||||||
var r2 = g;
|
|
||||||
return new Pair<>(r1, r2);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,6 +0,0 @@
|
|||||||
public class Foo{
|
|
||||||
|
|
||||||
public accept(Bar b){
|
|
||||||
b.visit(this);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,7 +0,0 @@
|
|||||||
public class InfReturn {
|
|
||||||
m(a) {
|
|
||||||
var ret;
|
|
||||||
a = ret;
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
public class InfReturnII {
|
|
||||||
m(a, b) {
|
|
||||||
var ret;
|
|
||||||
a = ret;
|
|
||||||
b = ret;
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,7 +0,0 @@
|
|||||||
class InnerInf {
|
|
||||||
m(a, b) {
|
|
||||||
var i;
|
|
||||||
a = i;
|
|
||||||
b = i;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,4 +1,4 @@
|
|||||||
/*
|
|
||||||
class Pair<T, U> {
|
class Pair<T, U> {
|
||||||
T x;
|
T x;
|
||||||
U y;
|
U y;
|
||||||
@ -17,7 +17,7 @@ class Pair<T, U> {
|
|||||||
return y;
|
return y;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
|
||||||
public class Iteration {
|
public class Iteration {
|
||||||
id(x) {
|
id(x) {
|
||||||
|
@ -1,46 +0,0 @@
|
|||||||
import java.lang.Boolean;
|
|
||||||
import java.lang.Object;
|
|
||||||
|
|
||||||
class List {
|
|
||||||
elem;
|
|
||||||
next;
|
|
||||||
|
|
||||||
List() {
|
|
||||||
super();
|
|
||||||
}
|
|
||||||
|
|
||||||
List(elem, next) {
|
|
||||||
this.elem = elem;
|
|
||||||
this.next = next;
|
|
||||||
}
|
|
||||||
|
|
||||||
addElement(newElem) {
|
|
||||||
return new List(newElem, this);
|
|
||||||
}
|
|
||||||
|
|
||||||
append(l) {
|
|
||||||
if (next == null) {
|
|
||||||
return l;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return new List(elem, next.append(l));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
addAll(l) {
|
|
||||||
var nextLoc = next;
|
|
||||||
while (//nextLoc != null
|
|
||||||
true) {
|
|
||||||
nextLoc = nextLoc.next;
|
|
||||||
}
|
|
||||||
nextLoc = l;
|
|
||||||
}
|
|
||||||
|
|
||||||
void m() {
|
|
||||||
List<? extends Object> l; // = new List<Integer>(1, null);
|
|
||||||
List<? extends Object> l2; // = new List<String>("SSS", null);
|
|
||||||
l.addAll(l2);
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
import java.lang.Double;
|
|
||||||
|
|
||||||
class Overloading {
|
|
||||||
m(x) { return x + x; }
|
|
||||||
m(x) { return x || x; }
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
class RecursionCond {
|
|
||||||
m(a, b, c) {
|
|
||||||
if (1 == 2) {
|
|
||||||
b = m(a, b);
|
|
||||||
c = m(a, b);
|
|
||||||
} else return a;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,9 +0,0 @@
|
|||||||
import java.lang.Boolean;
|
|
||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
public class Test {
|
|
||||||
fac = (x) -> {
|
|
||||||
if (x == 1) { return 1; }
|
|
||||||
return x * fac.apply(x - 1);
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
class Triple<U, T, S> {
|
|
||||||
U a;
|
|
||||||
T b;
|
|
||||||
S c;
|
|
||||||
|
|
||||||
Triple(U x, T y, S z) {
|
|
||||||
a = x; b = y; c = z;
|
|
||||||
}
|
|
||||||
|
|
||||||
U fst() { return a; }
|
|
||||||
T snd() { return b; }
|
|
||||||
S thrd() { return c; }
|
|
||||||
}
|
|
||||||
|
|
||||||
public class TripleTest {
|
|
||||||
m() {
|
|
||||||
return new Triple<>(m().thrd(), m().thrd(), m().thrd());
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
class Twice2 {
|
|
||||||
id1inst = new Id<>();
|
|
||||||
id1 = id1inst.id;
|
|
||||||
id2inst = new Id<>();
|
|
||||||
id2 = id2inst.id;
|
|
||||||
twice = id1.apply(id2);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
class Id<T> {
|
|
||||||
id = (T x) -> x;
|
|
||||||
}
|
|
@ -2,7 +2,7 @@ import java.lang.Integer;
|
|||||||
import java.lang.String;
|
import java.lang.String;
|
||||||
|
|
||||||
public class AA {
|
public class AA {
|
||||||
public m(Integer i) { return "AA"; }
|
m(Integer i) { return "AA"; }
|
||||||
|
|
||||||
public m2(AA x) { return "AA"; }
|
m2(AA x) { return "AA"; }
|
||||||
}
|
}
|
@ -1,14 +0,0 @@
|
|||||||
public class Access {
|
|
||||||
public int fPublic;
|
|
||||||
int fDefault;
|
|
||||||
private int fPrivate;
|
|
||||||
protected int fProtected;
|
|
||||||
|
|
||||||
public void mPublic() {}
|
|
||||||
void mDefault() {}
|
|
||||||
private void mPrivate() {}
|
|
||||||
protected void mProtected() {}
|
|
||||||
}
|
|
||||||
|
|
||||||
class AccessDefault {
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
class Base {
|
|
||||||
public void foo() {}
|
|
||||||
}
|
|
||||||
|
|
||||||
public class Annotation extends Base {
|
|
||||||
@Override
|
|
||||||
public void foo() {}
|
|
||||||
}
|
|
@ -1,4 +1,3 @@
|
|||||||
import java.lang.Integer;
|
import java.lang.Integer;
|
||||||
import AA;
|
|
||||||
|
|
||||||
public class BB extends AA { }
|
public class BB extends AA { }
|
@ -3,15 +3,15 @@ import java.lang.Double;
|
|||||||
|
|
||||||
public class BinaryInMeth {
|
public class BinaryInMeth {
|
||||||
|
|
||||||
public m(a){
|
m(a){
|
||||||
return ++a;
|
return ++a;
|
||||||
}
|
}
|
||||||
|
|
||||||
public m2(a,b){
|
m2(a,b){
|
||||||
return m(a+b);
|
return m(a+b);
|
||||||
}
|
}
|
||||||
|
|
||||||
public m3(a) {
|
m3(a) {
|
||||||
return m(++a);
|
return m(++a);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,9 +1,7 @@
|
|||||||
public class Box<A> {
|
class B { }
|
||||||
|
class Box_Main extends B {
|
||||||
A a;
|
m(b) {
|
||||||
|
b.m(new Box_Main());
|
||||||
public Box() { }
|
b.m(new B());
|
||||||
public Box(A a) {
|
|
||||||
//this.a = a;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
3
resources/bytecode/javFiles/Box.java
Normal file
3
resources/bytecode/javFiles/Box.java
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
class Box<A> {
|
||||||
|
void m(A a) { }
|
||||||
|
}
|
@ -1,7 +0,0 @@
|
|||||||
public class Bug112 {
|
|
||||||
public m(x) {
|
|
||||||
var y;
|
|
||||||
x = y;
|
|
||||||
return y;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
import java.lang.Boolean;
|
|
||||||
|
|
||||||
public class Bug122 {
|
|
||||||
public void main() {
|
|
||||||
if (true) {
|
|
||||||
for (Integer i = 0; i < 10; i++) {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
import java.lang.Boolean;
|
|
||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
public class Bug123 {
|
|
||||||
public Boolean works(){
|
|
||||||
if(true) return true;
|
|
||||||
else return false;
|
|
||||||
}
|
|
||||||
public void fails(){
|
|
||||||
Boolean a = true;
|
|
||||||
if(true) a = false;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,16 +0,0 @@
|
|||||||
import java.lang.Boolean;
|
|
||||||
import java.lang.Integer;
|
|
||||||
import java.lang.String;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.LinkedList;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
|
|
||||||
public class Bug125 {
|
|
||||||
static ArrayList<String> works = new ArrayList<>();
|
|
||||||
static List<String> fails = new ArrayList<>();
|
|
||||||
|
|
||||||
public void main() {
|
|
||||||
works.toString();
|
|
||||||
fails.toString();
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,15 +0,0 @@
|
|||||||
import java.util.Optional;
|
|
||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
public class StaticClass {
|
|
||||||
public static StaticClass barbar() {
|
|
||||||
return new StaticClass();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public class Bug285 {
|
|
||||||
public void foo() {
|
|
||||||
Optional<Integer> opt = Optional.empty();
|
|
||||||
StaticClass b = StaticClass.barbar();
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,7 +0,0 @@
|
|||||||
import Bug290B;
|
|
||||||
|
|
||||||
public class Bug290A {
|
|
||||||
public void m() {
|
|
||||||
new Bug290B();
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,11 +0,0 @@
|
|||||||
import java.lang.String;
|
|
||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
public class Bug290B {
|
|
||||||
String name;
|
|
||||||
|
|
||||||
public Bug290B() {
|
|
||||||
Integer i = 0;
|
|
||||||
name = i.toString() + "$$";
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
import java.lang.Float;
|
|
||||||
|
|
||||||
public class Bug293 {
|
|
||||||
bar(a) {
|
|
||||||
return 2 * a;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
interface IFoo {
|
|
||||||
void ga();
|
|
||||||
}
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
public class Bug295 {
|
|
||||||
public Integer a;
|
|
||||||
public Integer b;
|
|
||||||
public Integer c;
|
|
||||||
|
|
||||||
public Bug295(a, b, c) {
|
|
||||||
this(a);
|
|
||||||
this.b = b;
|
|
||||||
this.c = c;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Bug295(a) {
|
|
||||||
this.a = a;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,11 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
public class Bug296 {
|
|
||||||
public static m1() {
|
|
||||||
return m2();
|
|
||||||
}
|
|
||||||
|
|
||||||
static m2() {
|
|
||||||
return 10;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,11 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
public class Bug297 {
|
|
||||||
public static operation(func, a, b) {
|
|
||||||
return func.apply(a, b);
|
|
||||||
}
|
|
||||||
|
|
||||||
public exec() {
|
|
||||||
return Foo.operation((x, y) -> x + y, 10, 10);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,17 +0,0 @@
|
|||||||
import java.util.List;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.lang.Integer;
|
|
||||||
import java.lang.System;
|
|
||||||
import java.lang.Boolean;
|
|
||||||
import java.io.PrintStream;
|
|
||||||
import java.util.stream.Stream;
|
|
||||||
import java.util.function.Function;
|
|
||||||
|
|
||||||
public class Bug298 {
|
|
||||||
public void m() {
|
|
||||||
List<Integer> list = new ArrayList<>();
|
|
||||||
list.stream().map(x -> 2 * x);
|
|
||||||
|
|
||||||
Function<Integer, Boolean> filter = x -> true;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,17 +0,0 @@
|
|||||||
import java.lang.String;
|
|
||||||
|
|
||||||
class Base {
|
|
||||||
toString() {
|
|
||||||
return "Base";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public class Bug300 extends Base {
|
|
||||||
public m() {
|
|
||||||
return super.toString();
|
|
||||||
}
|
|
||||||
|
|
||||||
toString() {
|
|
||||||
return "Derived";
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,4 +0,0 @@
|
|||||||
import java.util.HashSet;
|
|
||||||
|
|
||||||
public class Bug301<A> extends HashSet<A> {
|
|
||||||
}
|
|
@ -1,11 +0,0 @@
|
|||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
public class Bug302 {
|
|
||||||
public Bug302(List<Integer> a){}
|
|
||||||
|
|
||||||
public static m() {
|
|
||||||
new Bug302(new ArrayList<Integer>());
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
class Base {
|
|
||||||
m(List<Integer> a) {}
|
|
||||||
}
|
|
||||||
|
|
||||||
public class Bug306 extends Base {
|
|
||||||
@Override
|
|
||||||
m(List<Integer> b) {
|
|
||||||
b.add(1);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,46 +0,0 @@
|
|||||||
public class Bug307 {
|
|
||||||
public void main() {
|
|
||||||
IVisitor v = new Visitor();
|
|
||||||
Impl2 f = new Impl2();
|
|
||||||
Impl1 g = new Impl1();
|
|
||||||
|
|
||||||
f.accept(v);
|
|
||||||
g.accept(v);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
interface IVisitor {
|
|
||||||
void visit(Impl1 f);
|
|
||||||
void visit(Impl2 fb);
|
|
||||||
}
|
|
||||||
|
|
||||||
interface IAcceptor {
|
|
||||||
void accept(IVisitor v);
|
|
||||||
}
|
|
||||||
|
|
||||||
class Visitor implements IVisitor {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void visit(Impl1 f) {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void visit(Impl2 fb) {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
class Impl1 implements IAcceptor {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void accept(IVisitor v) {
|
|
||||||
v.visit(this);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
class Impl2 implements IAcceptor {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void accept(IVisitor v) {
|
|
||||||
v.visit(this);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,16 +0,0 @@
|
|||||||
import java.util.List;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.lang.Integer;
|
|
||||||
import java.util.stream.Collectors;
|
|
||||||
import java.util.stream.Stream;
|
|
||||||
import java.util.function.Function;
|
|
||||||
import java.util.function.Predicate;
|
|
||||||
import java.util.Optional;
|
|
||||||
|
|
||||||
public class Bug309 {
|
|
||||||
public main() {
|
|
||||||
List<Integer> list = new ArrayList<>(List.of(1,2,3,4,5,6,7,8,9));
|
|
||||||
var res = list.stream().filter(x -> x == 5).map(x -> x * 2).findFirst();
|
|
||||||
return res;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,9 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
import java.lang.String;
|
|
||||||
|
|
||||||
public class Bug310 {
|
|
||||||
Integer i = 3;
|
|
||||||
public toString() {
|
|
||||||
return i.toString();
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
import java.lang.String;
|
|
||||||
|
|
||||||
public class Bug311 {
|
|
||||||
Bug311A i = new Bug311A();
|
|
||||||
public toString() {
|
|
||||||
return i.toString();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
class Bug311A {}
|
|
@ -1,8 +0,0 @@
|
|||||||
public class Bug312 {
|
|
||||||
Bug312A i = new Bug312A();
|
|
||||||
public main() {
|
|
||||||
if (i == null) {}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
class Bug312A {}
|
|
@ -1,13 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.stream.Stream;
|
|
||||||
import java.util.function.Predicate;
|
|
||||||
import java.util.function.Function;
|
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
public class Bug314 {
|
|
||||||
public List<Integer> convert(List<Integer> in) {
|
|
||||||
return in.stream().filter(x -> x > 5).collect(Collectors.toList());
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
import java.util.function.Function;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.stream.Stream;
|
|
||||||
|
|
||||||
public class Bug325 {
|
|
||||||
public main() {
|
|
||||||
List<Integer> list = new ArrayList<>(List.of(1,2,3,4,5));
|
|
||||||
var func = x -> x*2;
|
|
||||||
return list.stream().map(func).toList();
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
public class Bug326 {
|
|
||||||
public Bug326() {
|
|
||||||
var func = x -> y -> x * y;
|
|
||||||
return func.apply(3).apply(4);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
import Bug328B;
|
|
||||||
|
|
||||||
public class Bug328 extends Bug328B {
|
|
||||||
public Bug328() {
|
|
||||||
super(1);
|
|
||||||
}
|
|
||||||
}
|
|
Binary file not shown.
@ -1,3 +0,0 @@
|
|||||||
public class Bug328B {
|
|
||||||
public Bug328B(int a) {}
|
|
||||||
}
|
|
@ -1,15 +0,0 @@
|
|||||||
import java.lang.Object;
|
|
||||||
|
|
||||||
interface Visitor {
|
|
||||||
public void visit(Object obj);
|
|
||||||
public void visit(ClassA a);
|
|
||||||
}
|
|
||||||
|
|
||||||
class ClassA {
|
|
||||||
void accept(Visitor v) {
|
|
||||||
v.visit(this);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public class Bug332 {
|
|
||||||
}
|
|
@ -1,11 +0,0 @@
|
|||||||
import java.lang.String;
|
|
||||||
|
|
||||||
public class Bug333 {
|
|
||||||
public static String Bar = "Bar";
|
|
||||||
}
|
|
||||||
|
|
||||||
class Bar {
|
|
||||||
public bar() {
|
|
||||||
String s = Bug333.Bar;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
import java.lang.Number;
|
|
||||||
import java.lang.Object;
|
|
||||||
|
|
||||||
public class Bug337 {
|
|
||||||
public void main() {
|
|
||||||
Fun1$$<Object, Integer> fun1 = x -> x.hashCode() + 1;
|
|
||||||
Fun1$$<Number, Number> fun2 = fun1;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,11 +0,0 @@
|
|||||||
import java.util.List;
|
|
||||||
import java.lang.Integer;
|
|
||||||
import java.lang.String;
|
|
||||||
import java.lang.Object;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public class Bug338 {
|
|
||||||
public hashCode() {
|
|
||||||
return List.of(42);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,2 +0,0 @@
|
|||||||
public record Bug343() {
|
|
||||||
}
|
|
@ -1,16 +0,0 @@
|
|||||||
import java.util.Vector;
|
|
||||||
import java.lang.Integer;
|
|
||||||
import java.lang.String;
|
|
||||||
|
|
||||||
public class Bug98 {
|
|
||||||
|
|
||||||
public m(x, y ,z) {
|
|
||||||
x = new Vector<Integer>();
|
|
||||||
y = new Vector<String>();
|
|
||||||
x.add(1);
|
|
||||||
y.add("2");
|
|
||||||
//Integer i = x.elementAt(0);
|
|
||||||
//String s = y.elementAt(0);
|
|
||||||
return z.vectorAddAll(x, y);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,16 +0,0 @@
|
|||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Optional;
|
|
||||||
import java.lang.String;
|
|
||||||
import java.util.stream.Stream;
|
|
||||||
import java.util.function.Function;
|
|
||||||
import java.util.function.Predicate;
|
|
||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
class BugXXX {
|
|
||||||
public main() {
|
|
||||||
List<Integer> i = new ArrayList<>(List.of(1,2,3,4,5,6,7,8,9,10));
|
|
||||||
Optional<Integer> tmp = i.stream().filter(x -> x == 5).map(x -> x*2).findFirst();
|
|
||||||
return tmp;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,11 +1,11 @@
|
|||||||
import java.lang.Integer;
|
import java.lang.Integer;
|
||||||
import java.lang.String;
|
import java.lang.String;
|
||||||
import BB;
|
|
||||||
|
|
||||||
public class CC extends BB {
|
public class CC extends BB {
|
||||||
public m(Integer i) {
|
m(Integer i) {
|
||||||
return "CC";
|
return "CC";
|
||||||
}
|
}
|
||||||
|
|
||||||
public m2(CC x) { return "CC"; }
|
m2(CC x) { return "CC"; }
|
||||||
}
|
}
|
||||||
|
@ -1,13 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
public class Chain {
|
|
||||||
x = 5;
|
|
||||||
|
|
||||||
chain() {
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public m() {
|
|
||||||
return this.chain().chain().chain().x;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,5 +1,5 @@
|
|||||||
public class Cycle {
|
class Cycle {
|
||||||
public m(x, y) {
|
m(x, y) {
|
||||||
y = x;
|
y = x;
|
||||||
x = y;
|
x = y;
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
import java.lang.Integer;
|
import java.lang.Integer;
|
||||||
import CC;
|
|
||||||
|
|
||||||
public class DD extends CC { }
|
public class DD extends CC { }
|
||||||
|
|
||||||
|
@ -1,8 +1,3 @@
|
|||||||
import java.lang.String;
|
|
||||||
import java.lang.RuntimeException;
|
|
||||||
|
|
||||||
public class Exceptions {
|
public class Exceptions {
|
||||||
public m() {
|
// m(Integer i) throws
|
||||||
throw new RuntimeException("Some Exception");
|
|
||||||
}
|
|
||||||
}
|
}
|
@ -1,12 +1,12 @@
|
|||||||
import java.lang.Integer;
|
import java.lang.Integer;
|
||||||
import java.lang.Double;
|
import java.lang.Double;
|
||||||
import java.lang.String;
|
|
||||||
|
|
||||||
public class Fac {
|
public class Fac {
|
||||||
getFac(n) {
|
|
||||||
|
getFac(n){
|
||||||
var res = 1;
|
var res = 1;
|
||||||
var i = 1;
|
var i = 1;
|
||||||
while (i <= n) {
|
while(i<=n) {
|
||||||
res = res * i;
|
res = res * i;
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
|
@ -1,14 +1,12 @@
|
|||||||
import java.lang.String;
|
|
||||||
|
|
||||||
public class FieldTph2 {
|
public class FieldTph2 {
|
||||||
public a;
|
a;
|
||||||
|
|
||||||
public m(b){
|
m(b){
|
||||||
b = a;
|
b = a;
|
||||||
return b;
|
return b;
|
||||||
}
|
}
|
||||||
|
|
||||||
public m2(c){
|
m2(c){
|
||||||
a = c;
|
a = c;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,20 +1,20 @@
|
|||||||
public class FieldTphConsMeth {
|
public class FieldTphConsMeth {
|
||||||
|
|
||||||
public a;
|
a;
|
||||||
public FieldTphConsMeth(c) {
|
public FieldTphConsMeth(c) {
|
||||||
a = id(c);
|
a = id(c);
|
||||||
}
|
}
|
||||||
|
|
||||||
public id(b) {
|
id(b) {
|
||||||
return b;
|
return b;
|
||||||
}
|
}
|
||||||
|
|
||||||
public setA(x) {
|
setA(x) {
|
||||||
a = x;
|
a = x;
|
||||||
return a;
|
return a;
|
||||||
}
|
}
|
||||||
|
|
||||||
public m(x,y) {
|
m(x,y) {
|
||||||
x = id(y);
|
x = id(y);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
import java.lang.Boolean;
|
import java.lang.Boolean;
|
||||||
|
|
||||||
public class FieldTphMMeth {
|
public class FieldTphMMeth {
|
||||||
public a;
|
a;
|
||||||
|
|
||||||
public FieldTphMMeth(c,d,e) {
|
public FieldTphMMeth(c,d,e) {
|
||||||
a = m(c,d,e);
|
a = m(c,d,e);
|
||||||
}
|
}
|
||||||
|
|
||||||
public m(b,d,e) {
|
m(b,d,e) {
|
||||||
if(e) {
|
if(e) {
|
||||||
return m3(b);
|
return m3(b);
|
||||||
} else{
|
} else{
|
||||||
@ -16,11 +16,11 @@ public class FieldTphMMeth {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public m2(b) {
|
m2(b) {
|
||||||
a = m3(b);
|
a = m3(b);
|
||||||
}
|
}
|
||||||
|
|
||||||
public m3(b){
|
m3(b){
|
||||||
return b;
|
return b;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,23 +1,23 @@
|
|||||||
import java.lang.Integer;
|
import java.lang.Integer;
|
||||||
import java.lang.Boolean;
|
import java.lang.Boolean;
|
||||||
|
|
||||||
public class For{
|
class For{
|
||||||
public Integer m(Integer x){
|
Integer m(Integer x){
|
||||||
var c = x + 2;
|
var c = x + 2;
|
||||||
Boolean b = true;
|
// Boolean b = true;
|
||||||
c = 5;
|
// c = 5;
|
||||||
c++;
|
// c++;
|
||||||
++c;
|
// ++c;
|
||||||
c--;
|
// c--;
|
||||||
--c;
|
// --c;
|
||||||
while(x<2){
|
// while(x<2){
|
||||||
x = x +1;
|
// x = x +1;
|
||||||
b = false;
|
// b = false;
|
||||||
}
|
// }
|
||||||
for(int i = 0; i<10; i++) {
|
return c;
|
||||||
x = x + 5;
|
// for(int i = 0;i<10;i++) {
|
||||||
}
|
// x = x + 5;
|
||||||
return x;
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
// m2(Integer x){
|
// m2(Integer x){
|
||||||
|
@ -1,23 +0,0 @@
|
|||||||
import java.util.ArrayList;
|
|
||||||
import java.lang.Integer;
|
|
||||||
import java.lang.Number;
|
|
||||||
|
|
||||||
public class ForEach {
|
|
||||||
public m() {
|
|
||||||
var list = new ArrayList<>();
|
|
||||||
list.add(1); list.add(2); list.add(3);
|
|
||||||
|
|
||||||
var sum = 0;
|
|
||||||
for (var i : list) {
|
|
||||||
sum = sum + i;
|
|
||||||
}
|
|
||||||
return sum;
|
|
||||||
}
|
|
||||||
|
|
||||||
public m2() {
|
|
||||||
var list = new ArrayList<? extends Number>();
|
|
||||||
|
|
||||||
for (Number n : list) {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,15 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
import java.util.function.Function;
|
|
||||||
|
|
||||||
public class FunctionalInterface {
|
|
||||||
Integer accept(Function<Integer, Integer> f) {
|
|
||||||
return f.apply(20);
|
|
||||||
}
|
|
||||||
|
|
||||||
public Integer m() {
|
|
||||||
var v = accept(i -> {
|
|
||||||
return i * 10;
|
|
||||||
});
|
|
||||||
return v;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,8 +1,8 @@
|
|||||||
import java.lang.String;
|
import java.lang.String;
|
||||||
import java.lang.Integer;
|
import java.lang.Integer;
|
||||||
|
|
||||||
public class Generics2<B extends String>{
|
class Generics2<B extends String>{
|
||||||
public <X extends Integer> X m1(X b){
|
<B extends Integer> B m1(B b){
|
||||||
return b;
|
return b;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,9 +0,0 @@
|
|||||||
import java.lang.System;
|
|
||||||
import java.lang.String;
|
|
||||||
import java.io.PrintStream;
|
|
||||||
|
|
||||||
public class HelloWorld {
|
|
||||||
public static hello() {
|
|
||||||
System.out.println("Hello World!");
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,5 +0,0 @@
|
|||||||
import java.lang.*;
|
|
||||||
|
|
||||||
public class ImportWildcard {
|
|
||||||
m(a, b) { return a * b; }
|
|
||||||
}
|
|
@ -2,18 +2,15 @@ import java.util.Vector;
|
|||||||
|
|
||||||
import java.lang.Integer;
|
import java.lang.Integer;
|
||||||
import java.lang.String;
|
import java.lang.String;
|
||||||
import AA;
|
|
||||||
import BB;
|
|
||||||
import CC;
|
|
||||||
import DD;
|
|
||||||
|
|
||||||
public class Inherit {
|
public class Inherit {
|
||||||
|
|
||||||
public main(d, i) {
|
main(d, i) {
|
||||||
return d.m(i);
|
return d.m(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
public main(v, i) {
|
main(v, i) {
|
||||||
var aa = v.elementAt(0);
|
var aa = v.elementAt(0);
|
||||||
return aa.m(i);
|
return aa.m(i);
|
||||||
}
|
}
|
||||||
|
@ -2,18 +2,15 @@ import java.util.Vector;
|
|||||||
|
|
||||||
import java.lang.Integer;
|
import java.lang.Integer;
|
||||||
import java.lang.String;
|
import java.lang.String;
|
||||||
import AA;
|
|
||||||
import BB;
|
|
||||||
import CC;
|
|
||||||
import DD;
|
|
||||||
|
|
||||||
public class Inherit2 {
|
public class Inherit2 {
|
||||||
|
|
||||||
public main(d) {
|
main(d) {
|
||||||
return d.m2(d);
|
return d.m2(d);
|
||||||
}
|
}
|
||||||
|
|
||||||
public main(v) {
|
main(v) {
|
||||||
var aa = v.elementAt(0);
|
var aa = v.elementAt(0);
|
||||||
return aa.m2(aa);
|
return aa.m2(aa);
|
||||||
}
|
}
|
||||||
|
@ -1,18 +0,0 @@
|
|||||||
import java.lang.Object;
|
|
||||||
import java.lang.Integer;
|
|
||||||
import java.lang.Boolean;
|
|
||||||
|
|
||||||
interface Interface {}
|
|
||||||
|
|
||||||
class Test implements Interface {
|
|
||||||
}
|
|
||||||
class Test2 {
|
|
||||||
}
|
|
||||||
|
|
||||||
public class InstanceOf {
|
|
||||||
a = new Test();
|
|
||||||
|
|
||||||
public test1() { return this.a instanceof Test; }
|
|
||||||
public test2() { return this.a instanceof Interface; }
|
|
||||||
public test3() { return this.a instanceof Integer; }
|
|
||||||
}
|
|
@ -1,33 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
interface A {
|
|
||||||
void method1();
|
|
||||||
default method2() {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
interface B {
|
|
||||||
void method3();
|
|
||||||
}
|
|
||||||
|
|
||||||
interface C {
|
|
||||||
Integer myInt();
|
|
||||||
}
|
|
||||||
|
|
||||||
class ClassX implements A {
|
|
||||||
}
|
|
||||||
|
|
||||||
record ClassY(Integer myInt) implements C {}
|
|
||||||
|
|
||||||
public class Interfaces implements A, B {
|
|
||||||
public void method1() {
|
|
||||||
}
|
|
||||||
public void method3() {
|
|
||||||
var intf = new Interfaces();
|
|
||||||
intf = new ClassX();
|
|
||||||
intf.method1();
|
|
||||||
|
|
||||||
C c = new ClassY(10);
|
|
||||||
c.myInt();
|
|
||||||
}
|
|
||||||
}
|
|
9
resources/bytecode/javFiles/LamRunnable.jav
Normal file
9
resources/bytecode/javFiles/LamRunnable.jav
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
public class LamRunnable{
|
||||||
|
|
||||||
|
public LamRunnable(){
|
||||||
|
|
||||||
|
Runnable lam = () -> {System.out.println("lambda");};
|
||||||
|
lam.run();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -2,7 +2,7 @@ import java.lang.Integer;
|
|||||||
|
|
||||||
public class Lambda {
|
public class Lambda {
|
||||||
|
|
||||||
public m() {
|
m () {
|
||||||
var lam1 = (x) -> {
|
var lam1 = (x) -> {
|
||||||
return x;
|
return x;
|
||||||
};
|
};
|
||||||
|
@ -1,16 +1,13 @@
|
|||||||
import java.lang.Runnable;
|
import java.lang.Runnable;
|
||||||
import java.lang.String;
|
import java.lang.String;
|
||||||
import java.lang.System;
|
import java.lang.System;
|
||||||
import java.io.PrintStream;
|
|
||||||
|
|
||||||
public class LambdaRunnable {
|
public class LamRunnable{
|
||||||
|
|
||||||
public LambdaRunnable(){
|
public LamRunnable(){
|
||||||
|
|
||||||
|
|
||||||
Runnable lam = () -> {
|
Runnable lam = () -> {System.out.println("lambda");};
|
||||||
System.out.println("Runnable is running");
|
|
||||||
};
|
|
||||||
lam.run();
|
lam.run();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4,52 +4,52 @@ import java.lang.Float;
|
|||||||
import java.lang.Double;
|
import java.lang.Double;
|
||||||
|
|
||||||
public class LessEqual {
|
public class LessEqual {
|
||||||
public lessEqual(Integer a, Integer b){
|
lessEqual(Integer a, Integer b){
|
||||||
var c = a<=b;
|
var c = a<=b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessEqual(Long a, Long b){
|
lessEqual(Long a, Long b){
|
||||||
var c = a<=b;
|
var c = a<=b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessEqual(Float a, Float b){
|
lessEqual(Float a, Float b){
|
||||||
var c = a<=b;
|
var c = a<=b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessEqual(Double a, Double b){
|
lessEqual(Double a, Double b){
|
||||||
var c = a<=b;
|
var c = a<=b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessEqual(Long a, Integer b){
|
lessEqual(Long a, Integer b){
|
||||||
var c = a<=b;
|
var c = a<=b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessEqual(Float a, Integer b){
|
lessEqual(Float a, Integer b){
|
||||||
var c = a<=b;
|
var c = a<=b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessEqual(Double a, Integer b){
|
lessEqual(Double a, Integer b){
|
||||||
var c = a<=b;
|
var c = a<=b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessEqual(Float a, Long b){
|
lessEqual(Float a, Long b){
|
||||||
var c = a<=b;
|
var c = a<=b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessEqual(Double a, Long b){
|
lessEqual(Double a, Long b){
|
||||||
var c = a<=b;
|
var c = a<=b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessEqual(Double a, Float b){
|
lessEqual(Double a, Float b){
|
||||||
var c = a<=b;
|
var c = a<=b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
@ -5,52 +5,52 @@ import java.lang.Double;
|
|||||||
|
|
||||||
public class LessThan {
|
public class LessThan {
|
||||||
|
|
||||||
public lessThan(Integer a, Integer b){
|
lessThan(Integer a, Integer b){
|
||||||
var c = a<b;
|
var c = a<b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessThan(Long a, Long b){
|
lessThan(Long a, Long b){
|
||||||
var c = a<b;
|
var c = a<b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessThan(Float a, Float b){
|
lessThan(Float a, Float b){
|
||||||
var c = a<b;
|
var c = a<b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessThan(Double a, Double b){
|
lessThan(Double a, Double b){
|
||||||
var c = a<b;
|
var c = a<b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessThan(Long a, Integer b){
|
lessThan(Long a, Integer b){
|
||||||
var c = a<b;
|
var c = a<b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessThan(Float a, Integer b){
|
lessThan(Float a, Integer b){
|
||||||
var c = a<b;
|
var c = a<b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessThan(Double a, Integer b){
|
lessThan(Double a, Integer b){
|
||||||
var c = a<b;
|
var c = a<b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessThan(Float a, Long b){
|
lessThan(Float a, Long b){
|
||||||
var c = a<b;
|
var c = a<b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessThan(Double a, Long b){
|
lessThan(Double a, Long b){
|
||||||
var c = a<b;
|
var c = a<b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public lessThan(Double a, Float b){
|
lessThan(Double a, Float b){
|
||||||
var c = a<b;
|
var c = a<b;
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
@ -1,8 +0,0 @@
|
|||||||
import java.lang.Character;
|
|
||||||
|
|
||||||
public class Literal {
|
|
||||||
public m() { return null; }
|
|
||||||
public m2() { return 'C'; }
|
|
||||||
public m3() { return 10L; }
|
|
||||||
public m4() { return 10.5F; }
|
|
||||||
}
|
|
@ -1,5 +1,3 @@
|
|||||||
import java.util.List;
|
|
||||||
import java.util.AbstractList;
|
|
||||||
import java.util.Vector;
|
import java.util.Vector;
|
||||||
import java.lang.Integer;
|
import java.lang.Integer;
|
||||||
//import java.lang.Float;
|
//import java.lang.Float;
|
||||||
@ -11,7 +9,7 @@ public class Matrix extends Vector<Vector<Integer>> {
|
|||||||
Matrix () {
|
Matrix () {
|
||||||
}
|
}
|
||||||
|
|
||||||
public Matrix(vv) {
|
Matrix(vv) {
|
||||||
Integer i;
|
Integer i;
|
||||||
i = 0;
|
i = 0;
|
||||||
while(i < vv.size()) {
|
while(i < vv.size()) {
|
||||||
@ -21,7 +19,7 @@ public class Matrix extends Vector<Vector<Integer>> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public mul(m) {
|
mul(m) {
|
||||||
var ret = new Matrix();
|
var ret = new Matrix();
|
||||||
var i = 0;
|
var i = 0;
|
||||||
while(i < size()) {
|
while(i < size()) {
|
||||||
@ -32,8 +30,8 @@ public class Matrix extends Vector<Vector<Integer>> {
|
|||||||
var erg = 0;
|
var erg = 0;
|
||||||
var k = 0;
|
var k = 0;
|
||||||
while(k < v1.size()) {
|
while(k < v1.size()) {
|
||||||
erg = erg + v1.get(k)
|
erg = erg + v1.elementAt(k)
|
||||||
* m.get(k).get(j);
|
* m.elementAt(k).elementAt(j);
|
||||||
k++; }
|
k++; }
|
||||||
// v2.addElement(new Integer(erg));
|
// v2.addElement(new Integer(erg));
|
||||||
v2.addElement(erg);
|
v2.addElement(erg);
|
||||||
|
@ -8,7 +8,7 @@ public class MatrixOP extends Vector<Vector<Integer>> {
|
|||||||
MatrixOP () {
|
MatrixOP () {
|
||||||
}
|
}
|
||||||
|
|
||||||
public MatrixOP(vv) {
|
MatrixOP(vv) {
|
||||||
Integer i;
|
Integer i;
|
||||||
i = 0;
|
i = 0;
|
||||||
while(i < vv.size()) {
|
while(i < vv.size()) {
|
||||||
|
@ -2,16 +2,16 @@ import java.util.List;
|
|||||||
import java.lang.Integer;
|
import java.lang.Integer;
|
||||||
//import java.util.Collection;
|
//import java.util.Collection;
|
||||||
|
|
||||||
public class Merge {
|
class Merge {
|
||||||
|
|
||||||
public merge(a, b) {
|
merge(a, b) {
|
||||||
a.addAll(b);
|
a.addAll(b);
|
||||||
return a;
|
return a;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public sort(in){
|
sort(in){
|
||||||
var firstHalf = in.subList(1,2);
|
var firstHalf = in.subList(1,2);
|
||||||
var secondHalf = in.subList(1,2);
|
var secondHalf = in.subList(1,2);
|
||||||
return merge(sort(firstHalf), sort(secondHalf));
|
return merge(sort(firstHalf), sort(secondHalf));
|
||||||
|
@ -1,14 +1,13 @@
|
|||||||
import java.lang.Double;
|
import java.lang.Double;
|
||||||
import java.lang.String;
|
import java.lang.String;
|
||||||
import java.lang.Long;
|
import java.lang.Long;
|
||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
public class OL {
|
class OL {
|
||||||
public m (x) { return x + x; }
|
m (x) { return x + x; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public class OLMain {
|
class OLMain {
|
||||||
public main(x) {
|
main(x) {
|
||||||
var ol;
|
var ol;
|
||||||
ol = new OL();
|
ol = new OL();
|
||||||
return ol.m(x);
|
return ol.m(x);
|
||||||
|
@ -1,17 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
|
|
||||||
public class Parent {
|
|
||||||
public Integer x;
|
|
||||||
|
|
||||||
public Parent(Integer a) {
|
|
||||||
this.x = a;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Parent() {}
|
|
||||||
}
|
|
||||||
|
|
||||||
public class Child extends Parent {
|
|
||||||
public Child() {
|
|
||||||
super(3);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,34 +1,11 @@
|
|||||||
import java.lang.Boolean;
|
public class Op1{
|
||||||
import java.lang.Integer;
|
public Op1() {
|
||||||
|
|
||||||
public class Op1 {
|
Runnable lam = () -> {
|
||||||
public not() {
|
String test = "";
|
||||||
var b = false;
|
String b = "b";
|
||||||
var c = !b;
|
test = b;
|
||||||
return c;
|
System.out.println(test);};
|
||||||
}
|
//lam.run();
|
||||||
|
|
||||||
public or() {
|
|
||||||
var a = 10;
|
|
||||||
var b = 20;
|
|
||||||
return a | b;
|
|
||||||
}
|
|
||||||
|
|
||||||
public and() {
|
|
||||||
var a = 10;
|
|
||||||
var b = 20;
|
|
||||||
return a & b;
|
|
||||||
}
|
|
||||||
|
|
||||||
public xor() {
|
|
||||||
var a = 10;
|
|
||||||
var b = 20;
|
|
||||||
return a ^ b;
|
|
||||||
}
|
|
||||||
|
|
||||||
public mod() {
|
|
||||||
var a = 10;
|
|
||||||
var b = 2;
|
|
||||||
return a % b;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,17 +1,11 @@
|
|||||||
import java.lang.Integer;
|
import java.lang.Integer;
|
||||||
import java.lang.Double;
|
|
||||||
import java.lang.String;
|
import java.lang.String;
|
||||||
|
|
||||||
public class Op2 {
|
public class Op2 {
|
||||||
public m(){
|
m(){
|
||||||
var x = "";
|
var x = "";
|
||||||
var a = 5+x;
|
var a = 5+x;
|
||||||
|
|
||||||
Integer x = 10;
|
|
||||||
Double y = 10.5;
|
|
||||||
|
|
||||||
var a = x - y;
|
|
||||||
|
|
||||||
return a;
|
return a;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,50 +0,0 @@
|
|||||||
import java.lang.Integer;
|
|
||||||
import java.lang.Number;
|
|
||||||
import java.lang.Float;
|
|
||||||
|
|
||||||
record Point(Number x, Number y) {}
|
|
||||||
|
|
||||||
public class OverloadPattern {
|
|
||||||
public m(Point(Integer x, Integer y)) {
|
|
||||||
return x + y;
|
|
||||||
}
|
|
||||||
|
|
||||||
public m(Point(Float x, Float y)) {
|
|
||||||
return x * y;
|
|
||||||
}
|
|
||||||
|
|
||||||
public m(Integer x) {
|
|
||||||
return x;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
public class OverloadPattern {
|
|
||||||
Integer m$Point$_$java$lang$Integer$_$java$lang$Integer$_$(Point point) {
|
|
||||||
var x = point.x();
|
|
||||||
var y = point.y();
|
|
||||||
return x + y;
|
|
||||||
}
|
|
||||||
|
|
||||||
Float m$Point$_$java$lang$Float$_$java$lang$Float$_$(Point point) {
|
|
||||||
var x = point.x();
|
|
||||||
var y = point.y();
|
|
||||||
return x * y;
|
|
||||||
}
|
|
||||||
|
|
||||||
Number m(Point point) {
|
|
||||||
return switch(point) {
|
|
||||||
case Point(Integer x, Integer y) ->
|
|
||||||
m$Point$_$java$lang$Integer$_$java$lang$Integer$_$(point);
|
|
||||||
case Point(Float x, Float y) ->
|
|
||||||
m$Point$_$java$lang$Float$_$java$lang$Float$_$(point);
|
|
||||||
default -> throw new IllegalArgumentException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Integer m(Integer x) {
|
|
||||||
return x;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
*/
|
|
@ -2,17 +2,17 @@ import java.lang.String;
|
|||||||
|
|
||||||
public class Overloading{
|
public class Overloading{
|
||||||
|
|
||||||
public test(x){
|
test(x){
|
||||||
return x.methode();
|
return x.methode();
|
||||||
}
|
}
|
||||||
|
|
||||||
public methode(){
|
methode(){
|
||||||
return "Overloading";
|
return "Overloading";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class Overloading2{
|
public class Overloading2{
|
||||||
public methode(){
|
methode(){
|
||||||
return "Overloading2";
|
return "Overloading2";
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,12 +0,0 @@
|
|||||||
import java.lang.Object;
|
|
||||||
import java.lang.Boolean;
|
|
||||||
|
|
||||||
public class OverrideEquals extends OverrideRoot {
|
|
||||||
public boolean equals(Object o) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int method(int var1, float var2) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
|
Binary file not shown.
@ -1,3 +0,0 @@
|
|||||||
public abstract class OverrideRoot {
|
|
||||||
public abstract int method(int a, float b);
|
|
||||||
}
|
|
@ -2,16 +2,31 @@ import java.util.Vector;
|
|||||||
import java.lang.Boolean;
|
import java.lang.Boolean;
|
||||||
import java.lang.Object;
|
import java.lang.Object;
|
||||||
|
|
||||||
|
class Pair<U, T> {
|
||||||
|
U a;
|
||||||
|
T b;
|
||||||
|
|
||||||
public class Pair<T, U> {
|
make(x) {
|
||||||
T x;
|
var ret = new Pair<>();
|
||||||
U y;
|
ret.a = x.elementAt(0);
|
||||||
|
ret.b = x.elementAt(1);
|
||||||
public fst() {
|
return ret;
|
||||||
return x;
|
}
|
||||||
|
/*
|
||||||
|
eq(a, b) {
|
||||||
|
b = a;
|
||||||
|
return a == b;
|
||||||
}
|
}
|
||||||
|
|
||||||
public snd() {
|
compare( p) {
|
||||||
return y;
|
return eq(p.a, p.b);
|
||||||
|
//return p.a == p.b;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void m(Pair<?, ?> p, List<? extends Eq> b)
|
||||||
|
{
|
||||||
|
//this.compare(p); //1, type incorrect
|
||||||
|
this.compare(this.make(b)); //2, OK
|
||||||
|
}
|
||||||
|
*/
|
||||||
}
|
}
|
@ -3,7 +3,7 @@ import java.lang.String;
|
|||||||
|
|
||||||
public class Plus {
|
public class Plus {
|
||||||
|
|
||||||
public m(a,b) {
|
m(a,b) {
|
||||||
return a+b;
|
return a+b;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,25 +1,25 @@
|
|||||||
import java.lang.Integer;
|
import java.lang.Integer;
|
||||||
|
|
||||||
public class PostIncDec {
|
public class PostIncDec {
|
||||||
public m() {
|
m() {
|
||||||
var i = 0;
|
var i = 0;
|
||||||
i++;
|
i++;
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
|
|
||||||
public m2() {
|
m2() {
|
||||||
var i = 0;
|
var i = 0;
|
||||||
var j = i++;
|
var j = i++;
|
||||||
return j;
|
return j;
|
||||||
}
|
}
|
||||||
|
|
||||||
public d() {
|
d() {
|
||||||
var i = 0;
|
var i = 0;
|
||||||
i--;
|
i--;
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
|
|
||||||
public d2() {
|
d2() {
|
||||||
var i = 0;
|
var i = 0;
|
||||||
var j = i--;
|
var j = i--;
|
||||||
return j;
|
return j;
|
||||||
|
@ -1,25 +1,25 @@
|
|||||||
import java.lang.Integer;
|
import java.lang.Integer;
|
||||||
|
|
||||||
public class PreInc {
|
public class PreInc {
|
||||||
public m() {
|
m() {
|
||||||
var i = 0;
|
var i = 0;
|
||||||
++i;
|
++i;
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
|
|
||||||
public m2() {
|
m2() {
|
||||||
var i = 0;
|
var i = 0;
|
||||||
var j = ++i;
|
var j = ++i;
|
||||||
return j;
|
return j;
|
||||||
}
|
}
|
||||||
|
|
||||||
public d() {
|
d() {
|
||||||
var i = 0;
|
var i = 0;
|
||||||
--i;
|
--i;
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
|
|
||||||
public d2() {
|
d2() {
|
||||||
var i = 0;
|
var i = 0;
|
||||||
var j = --i;
|
var j = --i;
|
||||||
return j;
|
return j;
|
||||||
|
@ -3,16 +3,16 @@ import java.util.Stack;
|
|||||||
|
|
||||||
public class Put {
|
public class Put {
|
||||||
|
|
||||||
public putElement(ele, v) {
|
putElement(ele, v) {
|
||||||
v.addElement(ele);
|
v.addElement(ele);
|
||||||
}
|
}
|
||||||
|
|
||||||
public putElement(ele, s) {
|
putElement(ele, s) {
|
||||||
s.push(ele);
|
s.push(ele);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public main(ele, x) {
|
main(ele, x) {
|
||||||
putElement(ele, x);
|
putElement(ele, x);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user