diff --git a/Cargo.lock b/Cargo.lock
index 339cb0f..01f0dd9 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -449,12 +449,20 @@ dependencies = [
"tower-lsp",
]
+[[package]]
+name = "mist-codegen"
+version = "0.1.0"
+dependencies = [
+ "mist-parser",
+]
+
[[package]]
name = "mist-lang"
version = "0.0.3-alpha4"
dependencies = [
"cargo_metadata",
"mist-analyzer",
+ "mist-codegen",
"mist-parser",
"serde",
"serde_json",
diff --git a/Cargo.toml b/Cargo.toml
index e4e5dc5..f129aae 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -21,6 +21,7 @@ serde = { version = "1.0.228", features = ["serde_derive"] }
serde_json = "1.0.149"
mist-parser = { path = "./parser", version = "0.1.4"}
mist-analyzer = { path = "./analyzer", version = "0.0.1"}
+mist-codegen = { path = "./codegen", version = "0.1.0"}
cargo_metadata = "0.23.1"
[[bin]]
diff --git a/analyzer/src/lib.rs b/analyzer/src/lib.rs
index eb3e52c..cb1f168 100644
--- a/analyzer/src/lib.rs
+++ b/analyzer/src/lib.rs
@@ -31,7 +31,7 @@ impl LanguageServer for Backend {
.await;
}
- async fn completion(&self, params: CompletionParams) -> Result