Skip to main content

IR

Struct IR 

Source
pub struct IR {
    pub ir: String,
}

Fields§

§ir: String

Implementations§

Source§

impl IR

Source

pub fn new(ir: String) -> Self

Examples found in repository?
examples/usage.rs (line 22)
3fn main() {
4    let ir_json = r#"
5    {
6        "imports": ["sys", "os"],
7        "var:my_variable": {
8            "value": "hello world"
9        },
10        "var:count": {
11            "value": 42
12        },
13        "var:is_active": {
14            "value": true
15        },
16        "call:echo": {
17    "args": ["Hello", "@my_variable"]
18}
19    }
20    "#;
21
22    let ir = IR::new(ir_json.to_string());
23
24    for lang in ["Python", "JavaScript", "Lua"] {
25        println!("=== {} ===", lang);
26        match ir.transpile(lang) {
27            Ok(code) => println!("{}", code),
28            Err(e)   => eprintln!("Ошибка: {}", e),
29        }
30    }
31}
Source

pub fn transpile(&self, lang: &str) -> Result<String, IRError>

Examples found in repository?
examples/usage.rs (line 26)
3fn main() {
4    let ir_json = r#"
5    {
6        "imports": ["sys", "os"],
7        "var:my_variable": {
8            "value": "hello world"
9        },
10        "var:count": {
11            "value": 42
12        },
13        "var:is_active": {
14            "value": true
15        },
16        "call:echo": {
17    "args": ["Hello", "@my_variable"]
18}
19    }
20    "#;
21
22    let ir = IR::new(ir_json.to_string());
23
24    for lang in ["Python", "JavaScript", "Lua"] {
25        println!("=== {} ===", lang);
26        match ir.transpile(lang) {
27            Ok(code) => println!("{}", code),
28            Err(e)   => eprintln!("Ошибка: {}", e),
29        }
30    }
31}

Auto Trait Implementations§

§

impl Freeze for IR

§

impl RefUnwindSafe for IR

§

impl Send for IR

§

impl Sync for IR

§

impl Unpin for IR

§

impl UnsafeUnpin for IR

§

impl UnwindSafe for IR

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.