@@ -123,10 +123,6 @@ public function pattern(?string $pattern): self
123123
124124 public function normalize (mixed $ value , Context $ context ): mixed
125125 {
126- if ($ prevent = (is_array ($ value ) && isset ($ value [Helpers::PreventMerging]))) {
127- unset($ value [Helpers::PreventMerging]);
128- }
129-
130126 $ value = $ this ->doNormalize ($ value , $ context );
131127 if (is_array ($ value ) && $ this ->itemsValue ) {
132128 $ res = [];
@@ -144,18 +140,13 @@ public function normalize(mixed $value, Context $context): mixed
144140 $ value = $ res ;
145141 }
146142
147- if ($ prevent && is_array ($ value )) {
148- $ value [Helpers::PreventMerging] = true ;
149- }
150-
151143 return $ value ;
152144 }
153145
154146
155147 public function merge (mixed $ value , mixed $ base ): mixed
156148 {
157- if ($ this ->mergeMode === MergeMode::Replace || (is_array ($ value ) && isset ($ value [Helpers::PreventMerging]))) {
158- unset($ value [Helpers::PreventMerging]);
149+ if ($ this ->mergeMode === MergeMode::Replace) {
159150 return $ value ;
160151 }
161152
@@ -181,12 +172,6 @@ public function merge(mixed $value, mixed $base): mixed
181172
182173 public function complete (mixed $ value , Context $ context ): mixed
183174 {
184- $ merge = $ this ->merge ;
185- if (is_array ($ value ) && isset ($ value [Helpers::PreventMerging])) {
186- unset($ value [Helpers::PreventMerging]);
187- $ merge = false ;
188- }
189-
190175 if ($ value === null && is_array ($ this ->default )) {
191176 $ value = []; // is unable to distinguish null from array in NEON
192177 }
@@ -198,7 +183,7 @@ public function complete(mixed $value, Context $context): mixed
198183 $ isOk () && Helpers::validateRange ($ value , $ this ->range , $ context , $ this ->type );
199184 $ isOk () && $ value !== null && $ this ->pattern !== null && Helpers::validatePattern ($ value , $ this ->pattern , $ context );
200185 $ isOk () && is_array ($ value ) && $ this ->validateItems ($ value , $ context );
201- $ isOk () && $ merge && $ value = Helpers::merge ($ value , $ this ->default );
186+ $ isOk () && $ this -> merge && $ value = Helpers::merge ($ value , $ this ->default );
202187 $ isOk () && $ value = $ this ->doTransform ($ value , $ context );
203188 if (!$ isOk ()) {
204189 return null ;
0 commit comments