Initial Commit
This commit is contained in:
commit
8f66a64924
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
**/Cargo.lock
|
||||
target
|
9
Cargo.toml
Normal file
9
Cargo.toml
Normal file
@ -0,0 +1,9 @@
|
||||
[workspace]
|
||||
members = ["libconlang"]
|
||||
resolver = "2"
|
||||
|
||||
[workspace.package]
|
||||
version = "0.0.1"
|
||||
authors = ["John Breaux"]
|
||||
edition = "2021"
|
||||
license = "MIT"
|
1
libconlang/.gitignore
vendored
Normal file
1
libconlang/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
/target
|
9
libconlang/Cargo.toml
Normal file
9
libconlang/Cargo.toml
Normal file
@ -0,0 +1,9 @@
|
||||
[package]
|
||||
name = "conlang"
|
||||
version.workspace = true
|
||||
edition.workspace = true
|
||||
authors.workspace = true
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
40
libconlang/src/lib.rs
Normal file
40
libconlang/src/lib.rs
Normal file
@ -0,0 +1,40 @@
|
||||
//! Conlang is an expression-based programming language
|
||||
|
||||
pub mod token {
|
||||
//! Stores a component of a file as a type and span
|
||||
}
|
||||
|
||||
pub mod ast {
|
||||
//! Stores functions, data structure definitions, etc.
|
||||
}
|
||||
|
||||
pub mod lexer {
|
||||
//! Converts a text file into tokens
|
||||
}
|
||||
|
||||
pub mod parser {
|
||||
//! Parses tokens into an AST
|
||||
}
|
||||
|
||||
pub mod interpreter {
|
||||
//! Interprets an AST as a program
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
mod token {
|
||||
// TODO
|
||||
}
|
||||
mod ast {
|
||||
// TODO
|
||||
}
|
||||
mod lexer {
|
||||
// TODO
|
||||
}
|
||||
mod parser {
|
||||
// TODO
|
||||
}
|
||||
mod interpreter {
|
||||
// TODO
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user