organized, added futures

This commit is contained in:
ParkerTenBroeck 2025-04-25 13:25:03 -04:00
parent 13d9ba7363
commit 6424548e75
8 changed files with 29 additions and 6 deletions

View file

@ -1,4 +1,4 @@
import generator.Gen;
import generator.gen.Gen;
public class Examples {
// public static Gen<String, Void> parse(String str){

View file

@ -1,4 +1,4 @@
import generator.Gen;
import generator.gen.Gen;
public class Lexer {
public sealed interface Token{}

View file

@ -1,5 +1,5 @@
import generator.Fun;
import generator.Gen;
import generator.gen.Gen;
public class Main implements Runnable {
public static void main(String[] args) {

View file

@ -0,0 +1,18 @@
package generator.future;
public interface Future<R> {
@SuppressWarnings("unchecked")
default R poll(Waker waker){
return (R) Pending.INSTANCE;
}
default R await(){
throw new RuntimeException();
}
final class Pending{
private static final Pending INSTANCE = new Pending();
private Pending(){}
}
}

View file

@ -0,0 +1,5 @@
package generator.future;
public interface Waker {
void wake();
}

View file

@ -1,4 +1,4 @@
package generator;
package generator.gen;
public interface Gen<Y, R> {
Res<Y, R> next();

View file

@ -1,6 +1,6 @@
package generator.runtime;
import generator.Gen;
import generator.gen.Gen;
import java.lang.classfile.*;
import java.lang.classfile.attribute.InnerClassInfo;

View file

@ -1,7 +1,7 @@
package generator.runtime;
import generator.Fun;
import generator.Gen;
import generator.gen.Gen;
import java.io.IOException;
import java.lang.classfile.*;