asdf
This commit is contained in:
commit
33cea5bc3d
14 changed files with 171 additions and 0 deletions
7
.editorconfig
Normal file
7
.editorconfig
Normal file
|
@ -0,0 +1,7 @@
|
|||
[*.rs]
|
||||
end_of_file = lf
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
charset = utf-8
|
||||
indent_style = space
|
||||
indent_size = 4
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
/target
|
14
Cargo.lock
generated
Normal file
14
Cargo.lock
generated
Normal file
|
@ -0,0 +1,14 @@
|
|||
# This file is automatically @generated by Cargo.
|
||||
# It is not intended for manual editing.
|
||||
[[package]]
|
||||
name = "backend"
|
||||
version = "0.1.0"
|
||||
|
||||
[[package]]
|
||||
name = "driver"
|
||||
version = "0.1.0"
|
||||
|
||||
[[package]]
|
||||
name = "syntax"
|
||||
version = "0.1.0"
|
||||
|
6
Cargo.toml
Normal file
6
Cargo.toml
Normal file
|
@ -0,0 +1,6 @@
|
|||
[workspace]
|
||||
members = [
|
||||
"backend",
|
||||
"syntax",
|
||||
"driver",
|
||||
]
|
9
backend/Cargo.toml
Normal file
9
backend/Cargo.toml
Normal file
|
@ -0,0 +1,9 @@
|
|||
[package]
|
||||
name = "backend"
|
||||
version = "0.1.0"
|
||||
authors = ["Michael Zhang <iptq@protonmail.com>"]
|
||||
edition = "2018"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
7
backend/src/lib.rs
Normal file
7
backend/src/lib.rs
Normal file
|
@ -0,0 +1,7 @@
|
|||
#[cfg(test)]
|
||||
mod tests {
|
||||
#[test]
|
||||
fn it_works() {
|
||||
assert_eq!(2 + 2, 4);
|
||||
}
|
||||
}
|
9
driver/Cargo.toml
Normal file
9
driver/Cargo.toml
Normal file
|
@ -0,0 +1,9 @@
|
|||
[package]
|
||||
name = "driver"
|
||||
version = "0.1.0"
|
||||
authors = ["Michael Zhang <iptq@protonmail.com>"]
|
||||
edition = "2018"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
27
driver/src/main.rs
Normal file
27
driver/src/main.rs
Normal file
|
@ -0,0 +1,27 @@
|
|||
#![cfg_attr(feature = "deny-warnings", deny(warnings))]
|
||||
#![feature(rustc_private)]
|
||||
#![feature(str_strip)]
|
||||
|
||||
#[allow(unused_extern_crates)]
|
||||
extern crate rustc_driver;
|
||||
#[allow(unused_extern_crates)]
|
||||
extern crate rustc_errors;
|
||||
#[allow(unused_extern_crates)]
|
||||
extern crate rustc_interface;
|
||||
#[allow(unused_extern_crates)]
|
||||
extern crate rustc_middle;
|
||||
|
||||
use rustc_driver::Callbacks;
|
||||
|
||||
struct DefaultCallbacks;
|
||||
impl Callbacks for DefaultCallbacks {}
|
||||
|
||||
fn main() {
|
||||
rustc_driver::run_compiler(
|
||||
&[String::from("rustc"), String::from("main.rs")],
|
||||
&mut DefaultCallbacks,
|
||||
None,
|
||||
None,
|
||||
)
|
||||
.unwrap();
|
||||
}
|
9
examples/realworld/front.toml
Normal file
9
examples/realworld/front.toml
Normal file
|
@ -0,0 +1,9 @@
|
|||
|
||||
|
||||
[routes]
|
||||
admin = { path = "admin" }
|
||||
api = [
|
||||
{ path = "articles" },
|
||||
{ path = "auth" },
|
||||
{ path = "profiles" },
|
||||
]
|
1
rust-toolchain
Normal file
1
rust-toolchain
Normal file
|
@ -0,0 +1 @@
|
|||
master
|
36
setup-toolchain.sh
Executable file
36
setup-toolchain.sh
Executable file
|
@ -0,0 +1,36 @@
|
|||
#!/bin/bash
|
||||
# Set up the appropriate rustc toolchain
|
||||
|
||||
set -e
|
||||
|
||||
cd "$(dirname "$0")"
|
||||
|
||||
RTIM_PATH=$(command -v rustup-toolchain-install-master) || INSTALLED=false
|
||||
CARGO_HOME=${CARGO_HOME:-$HOME/.cargo}
|
||||
|
||||
# Check if RTIM is not installed or installed in other locations not in ~/.cargo/bin
|
||||
if [[ "$INSTALLED" == false || "$RTIM_PATH" == $CARGO_HOME/bin/rustup-toolchain-install-master ]]; then
|
||||
cargo +nightly install rustup-toolchain-install-master
|
||||
else
|
||||
VERSION=$(rustup-toolchain-install-master -V | grep -o "[0-9.]*")
|
||||
REMOTE=$(cargo +nightly search rustup-toolchain-install-master | grep -o "[0-9.]*")
|
||||
echo "info: skipping updating rustup-toolchain-install-master at $RTIM_PATH"
|
||||
echo " current version : $VERSION"
|
||||
echo " remote version : $REMOTE"
|
||||
fi
|
||||
|
||||
RUST_COMMIT=$(git ls-remote https://github.com/rust-lang/rust master | awk '{print $1}')
|
||||
|
||||
if rustc +master -Vv 2>/dev/null | grep -q "$RUST_COMMIT"; then
|
||||
echo "info: master toolchain is up-to-date"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [[ -n "$HOST_TOOLCHAIN" ]]; then
|
||||
TOOLCHAIN=('--host' "$HOST_TOOLCHAIN")
|
||||
else
|
||||
TOOLCHAIN=()
|
||||
fi
|
||||
|
||||
rustup-toolchain-install-master -f -n master "${TOOLCHAIN[@]}" -c rustc-dev -- "$RUST_COMMIT"
|
||||
rustup override set master
|
9
syntax/Cargo.toml
Normal file
9
syntax/Cargo.toml
Normal file
|
@ -0,0 +1,9 @@
|
|||
[package]
|
||||
name = "syntax"
|
||||
version = "0.1.0"
|
||||
authors = ["Michael Zhang <iptq@protonmail.com>"]
|
||||
edition = "2018"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
7
syntax/src/lib.rs
Normal file
7
syntax/src/lib.rs
Normal file
|
@ -0,0 +1,7 @@
|
|||
#[cfg(test)]
|
||||
mod tests {
|
||||
#[test]
|
||||
fn it_works() {
|
||||
assert_eq!(2 + 2, 4);
|
||||
}
|
||||
}
|
29
todomvc.ent
Normal file
29
todomvc.ent
Normal file
|
@ -0,0 +1,29 @@
|
|||
component TodoMVC {
|
||||
model {
|
||||
value: String,
|
||||
todos: List<String>,
|
||||
}
|
||||
|
||||
view {
|
||||
InputBox [
|
||||
bind:text = model.value,
|
||||
on:submit (model, event) => { },
|
||||
] {
|
||||
|
||||
}
|
||||
|
||||
List {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
component Navbar {
|
||||
model {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
component InputBox {
|
||||
|
||||
}
|
Loading…
Reference in a new issue