openinfer-dsl 0.1.3

Rust-embedded DSL for defining OpenInfer graphs with explicit control flow and memory semantics.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use syn::parse::{ParseStream, Result};
use syn::{Ident, LitInt};

use crate::types::RangeValue;

pub(crate) fn parse_range_value(input: ParseStream) -> Result<RangeValue> {
    if input.peek(LitInt) {
        Ok(RangeValue::Lit(input.parse()?))
    } else if input.peek(Ident) {
        Ok(RangeValue::Ident(input.parse()?))
    } else {
        Err(input.error("expected identifier or integer for loop range"))
    }
}