@@ -113,10 +113,6 @@ public function pattern(?string $pattern): self
113113
114114 public function normalize (mixed $ value , Context $ context ): mixed
115115 {
116- if ($ prevent = (is_array ($ value ) && isset ($ value [Helpers::PreventMerging]))) {
117- unset($ value [Helpers::PreventMerging]);
118- }
119-
120116 $ value = $ this ->doNormalize ($ value , $ context );
121117 if (is_array ($ value ) && $ this ->itemsValue ) {
122118 $ res = [];
@@ -134,18 +130,13 @@ public function normalize(mixed $value, Context $context): mixed
134130 $ value = $ res ;
135131 }
136132
137- if ($ prevent && is_array ($ value )) {
138- $ value [Helpers::PreventMerging] = true ;
139- }
140-
141133 return $ value ;
142134 }
143135
144136
145137 public function merge (mixed $ value , mixed $ base ): mixed
146138 {
147- if ($ this ->mergeMode === MergeMode::Replace || (is_array ($ value ) && isset ($ value [Helpers::PreventMerging]))) {
148- unset($ value [Helpers::PreventMerging]);
139+ if ($ this ->mergeMode === MergeMode::Replace) {
149140 return $ value ;
150141 }
151142
@@ -171,12 +162,6 @@ public function merge(mixed $value, mixed $base): mixed
171162
172163 public function complete (mixed $ value , Context $ context ): mixed
173164 {
174- $ merge = $ this ->merge ;
175- if (is_array ($ value ) && isset ($ value [Helpers::PreventMerging])) {
176- unset($ value [Helpers::PreventMerging]);
177- $ merge = false ;
178- }
179-
180165 if ($ value === null && is_array ($ this ->default )) {
181166 $ value = []; // is unable to distinguish null from array in NEON
182167 }
@@ -188,7 +173,7 @@ public function complete(mixed $value, Context $context): mixed
188173 $ isOk () && Helpers::validateRange ($ value , $ this ->range , $ context , $ this ->type );
189174 $ isOk () && $ value !== null && $ this ->pattern !== null && Helpers::validatePattern ($ value , $ this ->pattern , $ context );
190175 $ isOk () && is_array ($ value ) && $ this ->validateItems ($ value , $ context );
191- $ isOk () && $ merge && $ value = Helpers::merge ($ value , $ this ->default );
176+ $ isOk () && $ this -> merge && $ value = Helpers::merge ($ value , $ this ->default );
192177 $ isOk () && $ value = $ this ->doTransform ($ value , $ context );
193178 if (!$ isOk ()) {
194179 return null ;
0 commit comments