MCPcopy Create free account
hub / github.com/GraphiteEditor/Graphite / assert_parsed_node_fn

Function assert_parsed_node_fn

node-graph/node-macro/src/parsing.rs:979–1058  ·  view source on GitHub ↗
(parsed: &ParsedNodeFn, expected: &ParsedNodeFn)

Source from the content-addressed store, hash-verified

977 }
978
979 fn assert_parsed_node_fn(parsed: &ParsedNodeFn, expected: &ParsedNodeFn) {
980 assert_eq!(parsed.fn_name, expected.fn_name);
981 assert_eq!(parsed.struct_name, expected.struct_name);
982 assert_eq!(parsed.mod_name, expected.mod_name);
983 assert_eq!(parsed.is_async, expected.is_async);
984 assert_eq!(format!("{:?}", parsed.input), format!("{:?}", expected.input));
985 assert_eq!(format!("{:?}", parsed.output_type), format!("{:?}", expected.output_type));
986 assert_eq!(parsed.attributes.category, expected.attributes.category);
987 assert_eq!(parsed.attributes.display_name, expected.attributes.display_name);
988 assert_eq!(parsed.attributes.path, expected.attributes.path);
989 assert_eq!(parsed.attributes.skip_impl, expected.attributes.skip_impl);
990 assert_eq!(parsed.fields.len(), expected.fields.len());
991 assert_eq!(parsed.description, expected.description);
992
993 for (parsed_field, expected_field) in parsed.fields.iter().zip(expected.fields.iter()) {
994 match (parsed_field, expected_field) {
995 (
996 ParsedField {
997 pat_ident: p_name,
998 ty: ParsedFieldType::Regular(RegularParsedField {
999 ty: p_ty,
1000 exposed: p_exp,
1001 value_source: p_default,
1002 ..
1003 }),
1004 ..
1005 },
1006 ParsedField {
1007 pat_ident: e_name,
1008 ty: ParsedFieldType::Regular(RegularParsedField {
1009 ty: e_ty,
1010 exposed: e_exp,
1011 value_source: e_default,
1012 ..
1013 }),
1014 ..
1015 },
1016 ) => {
1017 assert_eq!(p_name, e_name);
1018 assert_eq!(p_exp, e_exp);
1019 match (p_default, e_default) {
1020 (ParsedValueSource::None, ParsedValueSource::None) => {}
1021 (ParsedValueSource::Default(p), ParsedValueSource::Default(e)) => {
1022 assert_eq!(p.to_token_stream().to_string(), e.to_token_stream().to_string());
1023 }
1024 (ParsedValueSource::Scope(p), ParsedValueSource::Scope(e)) => {
1025 assert_eq!(p.to_token_stream().to_string(), e.to_token_stream().to_string());
1026 }
1027 _ => panic!("Mismatched default values"),
1028 }
1029 assert_eq!(format!("{p_ty:?}"), format!("{:?}", e_ty));
1030 }
1031 (
1032 ParsedField {
1033 pat_ident: p_name,
1034 ty: ParsedFieldType::Node(NodeParsedField {
1035 input_type: p_input,
1036 output_type: p_output,

Callers 7

test_basic_nodeFunction · 0.85
test_node_with_impl_nodeFunction · 0.85
test_async_nodeFunction · 0.85

Calls 1

iterMethod · 0.45

Tested by 7

test_basic_nodeFunction · 0.68
test_node_with_impl_nodeFunction · 0.68
test_async_nodeFunction · 0.68