From eb37c5d4b91231716b5f6191a725bd1ffc511b99 Mon Sep 17 00:00:00 2001 From: pyranota Date: Thu, 29 May 2025 21:27:49 +0200 Subject: [PATCH] make rust parser resource-compat --- .../parsers/windmill-parser-rust/src/lib.rs | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/backend/parsers/windmill-parser-rust/src/lib.rs b/backend/parsers/windmill-parser-rust/src/lib.rs index 5d4d626f4c..34186d3efc 100644 --- a/backend/parsers/windmill-parser-rust/src/lib.rs +++ b/backend/parsers/windmill-parser-rust/src/lib.rs @@ -2,7 +2,7 @@ use anyhow::anyhow; use itertools::Itertools; use quote::ToTokens; use regex::Regex; -use windmill_parser::{Arg, MainArgSignature, Typ}; +use windmill_parser::{to_snake_case, Arg, MainArgSignature, Typ}; pub fn otyp_to_string(otyp: Option) -> String { otyp.unwrap() @@ -103,15 +103,30 @@ fn parse_pat_type(p: Box) -> Typ { Typ::List(Box::new(parse_pat_type(Box::new(a.clone())))) } else { Typ::Unknown + // Typ::Datetime } } else { Typ::Unknown + // Typ::Bytes } } - _ => Typ::Unknown, + s => { + // dbg!(s); + // dbg!(s); + // dbg!(s); + // dbg!(s); + // dbg!(s); + // dbg!(s); + // dbg!(s); + // Typ::Datetime + // Typ::Resource("c_my_resource_type".into()) + Typ::Resource(to_snake_case(s)) + // Typ::Unknown + } } } else { Typ::Unknown + // Typ::Bytes } } // syn::Type::Ptr(_) => todo!(), @@ -121,6 +136,8 @@ fn parse_pat_type(p: Box) -> Typ { // syn::Type::Tuple(_) => todo!(), // syn::Type::Verbatim(_) => todo!(), _ => Typ::Unknown, + // _ => Typ::Datetime, + // _ => Typ::Resource("stripe".into()), } }