summaryrefslogtreecommitdiff
path: root/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'main.cpp')
-rw-r--r--main.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/main.cpp b/main.cpp
index 34c7e0a4..f3349257 100644
--- a/main.cpp
+++ b/main.cpp
@@ -4,13 +4,24 @@
using namespace std;
-extern void Parse_Crate(::std::string mainfile);
+extern AST::Crate Parse_Crate(::std::string mainfile);
+extern void ResolvePaths(AST::Crate& crate);
+/// main!
int main(int argc, char *argv[])
{
try
{
- Parse_Crate("samples/1.rs");
+ AST::Crate crate = Parse_Crate("samples/1.rs");
+
+ // Resolve names into absolute?
+ ResolvePaths(crate);
+
+ // Flatten modules into "mangled" set
+
+ // Typecheck / type propagate module (type annotations of all values)
+
+ // Convert structures to C structures / tagged enums
}
catch(const ParseError::Base& e)
{