Coding Standards: Use static closures when not using `$this`.
When a closure does not use `$this`, it can be made `static` for improved performance. Static closures are supported in PHP since PHP 5.4. Props jrf, hellofromTonya, swissspidy, SergeyBiryukov. See #53359. Built from https://develop.svn.wordpress.org/trunk@51657 git-svn-id: http://core.svn.wordpress.org/trunk@51263 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
622985b69c
commit
c7d3e267b8
|
@ -31,7 +31,7 @@ $current_screen->is_block_editor( true );
|
||||||
// Default to is-fullscreen-mode to avoid jumps in the UI.
|
// Default to is-fullscreen-mode to avoid jumps in the UI.
|
||||||
add_filter(
|
add_filter(
|
||||||
'admin_body_class',
|
'admin_body_class',
|
||||||
function( $classes ) {
|
static function( $classes ) {
|
||||||
return "$classes is-fullscreen-mode";
|
return "$classes is-fullscreen-mode";
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
|
@ -474,7 +474,7 @@ class WP_Community_Events {
|
||||||
|
|
||||||
$future_wordcamps = array_filter(
|
$future_wordcamps = array_filter(
|
||||||
$future_events,
|
$future_events,
|
||||||
function( $wordcamp ) {
|
static function( $wordcamp ) {
|
||||||
return 'wordcamp' === $wordcamp['type'];
|
return 'wordcamp' === $wordcamp['type'];
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
|
@ -41,7 +41,7 @@ class WP_Site_Health_Auto_Updates {
|
||||||
|
|
||||||
$tests = array_filter( $tests );
|
$tests = array_filter( $tests );
|
||||||
$tests = array_map(
|
$tests = array_map(
|
||||||
function( $test ) {
|
static function( $test ) {
|
||||||
$test = (object) $test;
|
$test = (object) $test;
|
||||||
|
|
||||||
if ( empty( $test->severity ) ) {
|
if ( empty( $test->severity ) ) {
|
||||||
|
|
|
@ -1658,7 +1658,7 @@ function _upgrade_422_find_genericons_files_in_folder( $directory ) {
|
||||||
$dirs = glob( $directory . '*', GLOB_ONLYDIR );
|
$dirs = glob( $directory . '*', GLOB_ONLYDIR );
|
||||||
$dirs = array_filter(
|
$dirs = array_filter(
|
||||||
$dirs,
|
$dirs,
|
||||||
function( $dir ) {
|
static function( $dir ) {
|
||||||
// Skip any node_modules directories.
|
// Skip any node_modules directories.
|
||||||
return false === strpos( $dir, 'node_modules' );
|
return false === strpos( $dir, 'node_modules' );
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,7 +20,7 @@ if ( isset( $_GET['tab'] ) && 'policyguide' === $_GET['tab'] ) {
|
||||||
|
|
||||||
add_filter(
|
add_filter(
|
||||||
'admin_body_class',
|
'admin_body_class',
|
||||||
function( $body_class ) {
|
static function( $body_class ) {
|
||||||
$body_class .= ' privacy-settings ';
|
$body_class .= ' privacy-settings ';
|
||||||
|
|
||||||
return $body_class;
|
return $body_class;
|
||||||
|
|
|
@ -19,7 +19,7 @@ if ( ! class_exists( 'WP_Privacy_Policy_Content' ) ) {
|
||||||
|
|
||||||
add_filter(
|
add_filter(
|
||||||
'admin_body_class',
|
'admin_body_class',
|
||||||
function( $body_class ) {
|
static function( $body_class ) {
|
||||||
$body_class .= ' privacy-settings ';
|
$body_class .= ' privacy-settings ';
|
||||||
|
|
||||||
return $body_class;
|
return $body_class;
|
||||||
|
|
|
@ -186,7 +186,7 @@ if ( ! class_exists( 'TwentyTwenty_Customize' ) ) {
|
||||||
'settings' => 'accent_hue',
|
'settings' => 'accent_hue',
|
||||||
'description' => __( 'Apply a custom color for links, buttons, featured images.', 'twentytwenty' ),
|
'description' => __( 'Apply a custom color for links, buttons, featured images.', 'twentytwenty' ),
|
||||||
'mode' => 'hue',
|
'mode' => 'hue',
|
||||||
'active_callback' => function() use ( $wp_customize ) {
|
'active_callback' => static function() use ( $wp_customize ) {
|
||||||
return ( 'custom' === $wp_customize->get_setting( 'accent_hue_active' )->value() );
|
return ( 'custom' === $wp_customize->get_setting( 'accent_hue_active' )->value() );
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
|
@ -92,7 +92,7 @@ if ( ! class_exists( 'Twenty_Twenty_One_Customize' ) ) {
|
||||||
array(
|
array(
|
||||||
'capability' => 'edit_theme_options',
|
'capability' => 'edit_theme_options',
|
||||||
'default' => 'excerpt',
|
'default' => 'excerpt',
|
||||||
'sanitize_callback' => function( $value ) {
|
'sanitize_callback' => static function( $value ) {
|
||||||
return 'excerpt' === $value || 'full' === $value ? $value : 'excerpt';
|
return 'excerpt' === $value || 'full' === $value ? $value : 'excerpt';
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
|
@ -153,7 +153,7 @@ class Twenty_Twenty_One_Dark_Mode {
|
||||||
array(
|
array(
|
||||||
'section' => 'colors',
|
'section' => 'colors',
|
||||||
'priority' => 100,
|
'priority' => 100,
|
||||||
'active_callback' => function() {
|
'active_callback' => static function() {
|
||||||
return 127 >= Twenty_Twenty_One_Custom_Colors::get_relative_luminance_from_hex( get_theme_mod( 'background_color', 'D1E4DD' ) );
|
return 127 >= Twenty_Twenty_One_Custom_Colors::get_relative_luminance_from_hex( get_theme_mod( 'background_color', 'D1E4DD' ) );
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
@ -165,7 +165,7 @@ class Twenty_Twenty_One_Dark_Mode {
|
||||||
array(
|
array(
|
||||||
'capability' => 'edit_theme_options',
|
'capability' => 'edit_theme_options',
|
||||||
'default' => false,
|
'default' => false,
|
||||||
'sanitize_callback' => function( $value ) {
|
'sanitize_callback' => static function( $value ) {
|
||||||
return (bool) $value;
|
return (bool) $value;
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
@ -188,7 +188,7 @@ class Twenty_Twenty_One_Dark_Mode {
|
||||||
'label' => esc_html__( 'Dark Mode support', 'twentytwentyone' ),
|
'label' => esc_html__( 'Dark Mode support', 'twentytwentyone' ),
|
||||||
'priority' => 110,
|
'priority' => 110,
|
||||||
'description' => $description,
|
'description' => $description,
|
||||||
'active_callback' => function( $value ) {
|
'active_callback' => static function( $value ) {
|
||||||
return 127 < Twenty_Twenty_One_Custom_Colors::get_relative_luminance_from_hex( get_theme_mod( 'background_color', 'D1E4DD' ) );
|
return 127 < Twenty_Twenty_One_Custom_Colors::get_relative_luminance_from_hex( get_theme_mod( 'background_color', 'D1E4DD' ) );
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
|
@ -361,7 +361,7 @@ function wp_render_duotone_support( $block_content, $block ) {
|
||||||
|
|
||||||
$selectors = explode( ',', $duotone_support );
|
$selectors = explode( ',', $duotone_support );
|
||||||
$selectors_scoped = array_map(
|
$selectors_scoped = array_map(
|
||||||
function ( $selector ) use ( $duotone_id ) {
|
static function ( $selector ) use ( $duotone_id ) {
|
||||||
return '.' . $duotone_id . ' ' . trim( $selector );
|
return '.' . $duotone_id . ' ' . trim( $selector );
|
||||||
},
|
},
|
||||||
$selectors
|
$selectors
|
||||||
|
|
|
@ -131,7 +131,7 @@ function wp_restore_group_inner_container( $block_content, $block ) {
|
||||||
$replace_regex = '/(^\s*<div\b[^>]*wp-block-group[^>]*>)(.*)(<\/div>\s*$)/ms';
|
$replace_regex = '/(^\s*<div\b[^>]*wp-block-group[^>]*>)(.*)(<\/div>\s*$)/ms';
|
||||||
$updated_content = preg_replace_callback(
|
$updated_content = preg_replace_callback(
|
||||||
$replace_regex,
|
$replace_regex,
|
||||||
function( $matches ) {
|
static function( $matches ) {
|
||||||
return $matches[1] . '<div class="wp-block-group__inner-container">' . $matches[2] . '</div>' . $matches[3];
|
return $matches[1] . '<div class="wp-block-group__inner-container">' . $matches[2] . '</div>' . $matches[3];
|
||||||
},
|
},
|
||||||
$block_content
|
$block_content
|
||||||
|
|
|
@ -124,7 +124,7 @@ function resolve_block_template( $template_type, $template_hierarchy ) {
|
||||||
|
|
||||||
usort(
|
usort(
|
||||||
$templates,
|
$templates,
|
||||||
function ( $template_a, $template_b ) use ( $slug_priorities ) {
|
static function ( $template_a, $template_b ) use ( $slug_priorities ) {
|
||||||
return $slug_priorities[ $template_a->slug ] - $slug_priorities[ $template_b->slug ];
|
return $slug_priorities[ $template_a->slug ] - $slug_priorities[ $template_b->slug ];
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
|
@ -636,7 +636,7 @@ class WP_Theme_JSON {
|
||||||
|
|
||||||
$declaration_block = array_reduce(
|
$declaration_block = array_reduce(
|
||||||
$declarations,
|
$declarations,
|
||||||
function ( $carry, $element ) {
|
static function ( $carry, $element ) {
|
||||||
return $carry .= $element['name'] . ': ' . $element['value'] . ';'; },
|
return $carry .= $element['name'] . ': ' . $element['value'] . ';'; },
|
||||||
''
|
''
|
||||||
);
|
);
|
||||||
|
|
|
@ -3113,7 +3113,7 @@ function wp_rel_nofollow( $text ) {
|
||||||
$text = stripslashes( $text );
|
$text = stripslashes( $text );
|
||||||
$text = preg_replace_callback(
|
$text = preg_replace_callback(
|
||||||
'|<a (.+?)>|i',
|
'|<a (.+?)>|i',
|
||||||
function( $matches ) {
|
static function( $matches ) {
|
||||||
return wp_rel_callback( $matches, 'nofollow' );
|
return wp_rel_callback( $matches, 'nofollow' );
|
||||||
},
|
},
|
||||||
$text
|
$text
|
||||||
|
@ -3147,7 +3147,7 @@ function wp_rel_ugc( $text ) {
|
||||||
$text = stripslashes( $text );
|
$text = stripslashes( $text );
|
||||||
$text = preg_replace_callback(
|
$text = preg_replace_callback(
|
||||||
'|<a (.+?)>|i',
|
'|<a (.+?)>|i',
|
||||||
function( $matches ) {
|
static function( $matches ) {
|
||||||
return wp_rel_callback( $matches, 'nofollow ugc' );
|
return wp_rel_callback( $matches, 'nofollow ugc' );
|
||||||
},
|
},
|
||||||
$text
|
$text
|
||||||
|
|
|
@ -3227,7 +3227,7 @@ function rest_get_endpoint_args_for_schema( $schema, $method = WP_REST_Server::C
|
||||||
function rest_convert_error_to_response( $error ) {
|
function rest_convert_error_to_response( $error ) {
|
||||||
$status = array_reduce(
|
$status = array_reduce(
|
||||||
$error->get_all_error_data(),
|
$error->get_all_error_data(),
|
||||||
function ( $status, $error_data ) {
|
static function ( $status, $error_data ) {
|
||||||
return is_array( $error_data ) && isset( $error_data['status'] ) ? $error_data['status'] : $status;
|
return is_array( $error_data ) && isset( $error_data['status'] ) ? $error_data['status'] : $status;
|
||||||
},
|
},
|
||||||
500
|
500
|
||||||
|
|
|
@ -597,7 +597,7 @@ abstract class WP_REST_Controller {
|
||||||
// Return the list of all requested fields which appear in the schema.
|
// Return the list of all requested fields which appear in the schema.
|
||||||
return array_reduce(
|
return array_reduce(
|
||||||
$requested_fields,
|
$requested_fields,
|
||||||
function( $response_fields, $field ) use ( $fields ) {
|
static function( $response_fields, $field ) use ( $fields ) {
|
||||||
if ( in_array( $field, $fields, true ) ) {
|
if ( in_array( $field, $fields, true ) ) {
|
||||||
$response_fields[] = $field;
|
$response_fields[] = $field;
|
||||||
return $response_fields;
|
return $response_fields;
|
||||||
|
|
|
@ -381,7 +381,7 @@ class WP_REST_Plugins_Controller extends WP_REST_Controller {
|
||||||
$installed_locales = apply_filters( 'plugins_update_check_locales', $installed_locales );
|
$installed_locales = apply_filters( 'plugins_update_check_locales', $installed_locales );
|
||||||
|
|
||||||
$language_packs = array_map(
|
$language_packs = array_map(
|
||||||
function( $item ) {
|
static function( $item ) {
|
||||||
return (object) $item;
|
return (object) $item;
|
||||||
},
|
},
|
||||||
$api->language_packs
|
$api->language_packs
|
||||||
|
@ -389,7 +389,7 @@ class WP_REST_Plugins_Controller extends WP_REST_Controller {
|
||||||
|
|
||||||
$language_packs = array_filter(
|
$language_packs = array_filter(
|
||||||
$language_packs,
|
$language_packs,
|
||||||
function( $pack ) use ( $installed_locales ) {
|
static function( $pack ) use ( $installed_locales ) {
|
||||||
return in_array( $pack->language, $installed_locales, true );
|
return in_array( $pack->language, $installed_locales, true );
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
|
@ -85,7 +85,7 @@ class WP_REST_Widget_Types_Controller extends WP_REST_Controller {
|
||||||
'form_data' => array(
|
'form_data' => array(
|
||||||
'description' => __( 'Serialized widget form data to encode into instance settings.' ),
|
'description' => __( 'Serialized widget form data to encode into instance settings.' ),
|
||||||
'type' => 'string',
|
'type' => 'string',
|
||||||
'sanitize_callback' => function( $string ) {
|
'sanitize_callback' => static function( $string ) {
|
||||||
$array = array();
|
$array = array();
|
||||||
wp_parse_str( $string, $array );
|
wp_parse_str( $string, $array );
|
||||||
return $array;
|
return $array;
|
||||||
|
|
|
@ -792,7 +792,7 @@ class WP_REST_Widgets_Controller extends WP_REST_Controller {
|
||||||
'type' => 'string',
|
'type' => 'string',
|
||||||
'context' => array(),
|
'context' => array(),
|
||||||
'arg_options' => array(
|
'arg_options' => array(
|
||||||
'sanitize_callback' => function( $string ) {
|
'sanitize_callback' => static function( $string ) {
|
||||||
$array = array();
|
$array = array();
|
||||||
wp_parse_str( $string, $array );
|
wp_parse_str( $string, $array );
|
||||||
return $array;
|
return $array;
|
||||||
|
|
|
@ -2692,7 +2692,7 @@ function wp_maybe_inline_styles() {
|
||||||
// Reorder styles array based on size.
|
// Reorder styles array based on size.
|
||||||
usort(
|
usort(
|
||||||
$styles,
|
$styles,
|
||||||
function( $a, $b ) {
|
static function( $a, $b ) {
|
||||||
return ( $a['size'] <= $b['size'] ) ? -1 : 1;
|
return ( $a['size'] <= $b['size'] ) ? -1 : 1;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
|
@ -517,7 +517,7 @@ function wp_update_plugins( $extra_stats = array() ) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$sanitize_plugin_update_payload = function( &$item ) {
|
$sanitize_plugin_update_payload = static function( &$item ) {
|
||||||
$item = (object) $item;
|
$item = (object) $item;
|
||||||
|
|
||||||
unset( $item->translations, $item->compatibility );
|
unset( $item->translations, $item->compatibility );
|
||||||
|
|
|
@ -3459,7 +3459,7 @@ function wp_user_personal_data_exporter( $email_address ) {
|
||||||
// Remove items that use reserved names.
|
// Remove items that use reserved names.
|
||||||
$extra_data = array_filter(
|
$extra_data = array_filter(
|
||||||
$_extra_data,
|
$_extra_data,
|
||||||
function( $item ) use ( $reserved_names ) {
|
static function( $item ) use ( $reserved_names ) {
|
||||||
return ! in_array( $item['name'], $reserved_names, true );
|
return ! in_array( $item['name'], $reserved_names, true );
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
*
|
*
|
||||||
* @global string $wp_version
|
* @global string $wp_version
|
||||||
*/
|
*/
|
||||||
$wp_version = '5.9-alpha-51655';
|
$wp_version = '5.9-alpha-51657';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||||
|
|
Loading…
Reference in New Issue