MCPcopy
hub / github.com/pallets/flask / _merge_blueprint_funcs

Method _merge_blueprint_funcs

src/flask/sansio/blueprints.py:379–410  ·  view source on GitHub ↗
(self, app: App, name: str)

Source from the content-addressed store, hash-verified

377 blueprint.register(app, bp_options)
378
379 def _merge_blueprint_funcs(self, app: App, name: str) -> None:
380 def extend(
381 bp_dict: dict[ft.AppOrBlueprintKey, list[t.Any]],
382 parent_dict: dict[ft.AppOrBlueprintKey, list[t.Any]],
383 ) -> None:
384 for key, values in bp_dict.items():
385 key = name if key is None else f"{name}.{key}"
386 parent_dict[key].extend(values)
387
388 for key, value in self.error_handler_spec.items():
389 key = name if key is None else f"{name}.{key}"
390 value = defaultdict(
391 dict,
392 {
393 code: {exc_class: func for exc_class, func in code_values.items()}
394 for code, code_values in value.items()
395 },
396 )
397 app.error_handler_spec[key] = value
398
399 for endpoint, func in self.view_functions.items():
400 app.view_functions[endpoint] = func
401
402 extend(self.before_request_funcs, app.before_request_funcs)
403 extend(self.after_request_funcs, app.after_request_funcs)
404 extend(
405 self.teardown_request_funcs,
406 app.teardown_request_funcs,
407 )
408 extend(self.url_default_functions, app.url_default_functions)
409 extend(self.url_value_preprocessors, app.url_value_preprocessors)
410 extend(self.template_context_processors, app.template_context_processors)
411
412 @setupmethod
413 def add_url_rule(

Callers 1

registerMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected