@@ -659,17 +659,22 @@ fn process_literal_value(lit_val_pair: &Pair<Rule>) -> Result<Value, ProcessorEr
659659 . into_inner ( )
660660 . map ( |elem_pair| process_literal_value ( & elem_pair) )
661661 . collect ( ) ;
662- let middleware_array = middleware:: containers:: Array :: new ( elements?)
663- . map_err ( |e| ProcessorError :: Internal ( format ! ( "Failed to create Array: {}" , e) ) ) ?;
662+ let middleware_array =
663+ middleware:: containers:: Array :: new ( crate :: constants:: MAX_DEPTH , elements?)
664+ . map_err ( |e| {
665+ ProcessorError :: Internal ( format ! ( "Failed to create Array: {}" , e) )
666+ } ) ?;
664667 Ok ( Value :: from ( middleware_array) )
665668 }
666669 Rule :: literal_set => {
667670 let elements: Result < HashSet < Value > , ProcessorError > = inner_lit
668671 . into_inner ( )
669672 . map ( |elem_pair| process_literal_value ( & elem_pair) )
670673 . collect ( ) ;
671- let middleware_set = middleware:: containers:: Set :: new ( elements?)
672- . map_err ( |e| ProcessorError :: Internal ( format ! ( "Failed to create Set: {}" , e) ) ) ?;
674+ let middleware_set =
675+ middleware:: containers:: Set :: new ( crate :: constants:: MAX_DEPTH , elements?) . map_err (
676+ |e| ProcessorError :: Internal ( format ! ( "Failed to create Set: {}" , e) ) ,
677+ ) ?;
673678 Ok ( Value :: from ( middleware_set) )
674679 }
675680 Rule :: literal_dict => {
@@ -684,9 +689,11 @@ fn process_literal_value(lit_val_pair: &Pair<Rule>) -> Result<Value, ProcessorEr
684689 Ok ( ( Key :: new ( key_str) , val) )
685690 } )
686691 . collect ( ) ;
687- let middleware_dict = middleware:: containers:: Dictionary :: new ( pairs?) . map_err ( |e| {
688- ProcessorError :: Internal ( format ! ( "Failed to create Dictionary: {}" , e) )
689- } ) ?;
692+ let middleware_dict =
693+ middleware:: containers:: Dictionary :: new ( crate :: constants:: MAX_DEPTH , pairs?)
694+ . map_err ( |e| {
695+ ProcessorError :: Internal ( format ! ( "Failed to create Dictionary: {}" , e) )
696+ } ) ?;
690697 Ok ( Value :: from ( middleware_dict) )
691698 }
692699 _ => unreachable ! ( "Unexpected rule: {:?}" , inner_lit. as_rule( ) ) ,
0 commit comments