aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/CouscousCompiler.java
blob: 39c1709055135641646dfae5b5bccd92046f4ebf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package org.zwobble.couscous;

import java.io.IOException;
import java.nio.file.Path;
import java.util.List;

import org.zwobble.couscous.ast.ClassNode;

public class CouscousCompiler {
    private final Frontend frontend;
    private final Backend backend;

    public CouscousCompiler(Frontend frontend, Backend backend) {
        this.frontend = frontend;
        this.backend = backend;
    }

    public void compileDirectory(Path path) throws IOException {
        List<ClassNode> classes = frontend.readSourceDirectory(path);
        backend.compile(classes);
    }

}