mirror of
https://github.com/enduro2d/enduro2d.git
synced 2025-12-15 00:11:55 +07:00
use C++17 std::invoke instead custom impl
This commit is contained in:
@@ -301,7 +301,7 @@ namespace
|
||||
{
|
||||
bind_property_block(debug, ps, pb);
|
||||
try {
|
||||
stdex::invoke(
|
||||
std::invoke(
|
||||
std::forward<F>(f),
|
||||
std::forward<Args>(args)...);
|
||||
} catch (...) {
|
||||
@@ -326,7 +326,7 @@ namespace
|
||||
}
|
||||
}
|
||||
try {
|
||||
stdex::invoke(std::forward<F>(f), std::forward<Args>(args)...);
|
||||
std::invoke(std::forward<F>(f), std::forward<Args>(args)...);
|
||||
} catch (...) {
|
||||
for ( std::size_t i = 0, e = geo.vertices_count(); i < e; ++i ) {
|
||||
const vertex_buffer_ptr& vb = geo.vertices(i);
|
||||
|
||||
@@ -391,7 +391,7 @@ namespace e2d::opengl
|
||||
GL_CHECK_CODE(debug, glUseProgram(
|
||||
program));
|
||||
try {
|
||||
stdex::invoke(std::forward<F>(f), std::forward<Args>(args)...);
|
||||
std::invoke(std::forward<F>(f), std::forward<Args>(args)...);
|
||||
} catch (...) {
|
||||
GL_CHECK_CODE(debug, glUseProgram(
|
||||
math::numeric_cast<GLuint>(prev_program)));
|
||||
@@ -418,7 +418,7 @@ namespace e2d::opengl
|
||||
GL_CHECK_CODE(debug, glBindBuffer(
|
||||
target, buffer));
|
||||
try {
|
||||
stdex::invoke(std::forward<F>(f), std::forward<Args>(args)...);
|
||||
std::invoke(std::forward<F>(f), std::forward<Args>(args)...);
|
||||
} catch (...) {
|
||||
GL_CHECK_CODE(debug, glBindBuffer(
|
||||
target, math::numeric_cast<GLuint>(prev_buffer)));
|
||||
@@ -445,7 +445,7 @@ namespace e2d::opengl
|
||||
GL_CHECK_CODE(debug, glBindTexture(
|
||||
target, texture));
|
||||
try {
|
||||
stdex::invoke(std::forward<F>(f), std::forward<Args>(args)...);
|
||||
std::invoke(std::forward<F>(f), std::forward<Args>(args)...);
|
||||
} catch (...) {
|
||||
GL_CHECK_CODE(debug, glBindTexture(
|
||||
target, math::numeric_cast<GLuint>(prev_texture)));
|
||||
@@ -472,7 +472,7 @@ namespace e2d::opengl
|
||||
GL_CHECK_CODE(debug, glBindFramebuffer(
|
||||
target, framebuffer));
|
||||
try {
|
||||
stdex::invoke(std::forward<F>(f), std::forward<Args>(args)...);
|
||||
std::invoke(std::forward<F>(f), std::forward<Args>(args)...);
|
||||
} catch (...) {
|
||||
GL_CHECK_CODE(debug, glBindFramebuffer(
|
||||
target, math::numeric_cast<GLuint>(prev_framebuffer)));
|
||||
@@ -499,7 +499,7 @@ namespace e2d::opengl
|
||||
GL_CHECK_CODE(debug, glBindRenderbuffer(
|
||||
target, renderbuffer));
|
||||
try {
|
||||
stdex::invoke(std::forward<F>(f), std::forward<Args>(args)...);
|
||||
std::invoke(std::forward<F>(f), std::forward<Args>(args)...);
|
||||
} catch (...) {
|
||||
GL_CHECK_CODE(debug, glBindRenderbuffer(
|
||||
target, math::numeric_cast<GLuint>(prev_renderbuffer)));
|
||||
|
||||
@@ -43,7 +43,7 @@ namespace e2d
|
||||
void shader::internal_state::with_uniform_location(str_hash name, F&& f) const {
|
||||
const auto iter = uniforms_.find(name);
|
||||
if ( iter != uniforms_.end() ) {
|
||||
stdex::invoke(std::forward<F>(f), iter->second);
|
||||
std::invoke(std::forward<F>(f), iter->second);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,7 +51,7 @@ namespace e2d
|
||||
void shader::internal_state::with_attribute_location(str_hash name, F&& f) const {
|
||||
const auto iter = attributes_.find(name);
|
||||
if ( iter != attributes_.end() ) {
|
||||
stdex::invoke(std::forward<F>(f), iter->second);
|
||||
std::invoke(std::forward<F>(f), iter->second);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -178,10 +178,10 @@ namespace e2d
|
||||
public:
|
||||
internal_state& reset_states() noexcept;
|
||||
internal_state& set_states(const state_block& sb) noexcept;
|
||||
|
||||
|
||||
internal_state& reset_shader_program() noexcept;
|
||||
internal_state& set_shader_program(const shader_ptr& sp) noexcept;
|
||||
|
||||
|
||||
internal_state& reset_render_target() noexcept;
|
||||
internal_state& set_render_target(const render_target_ptr& rt) noexcept;
|
||||
private:
|
||||
|
||||
@@ -98,7 +98,7 @@ namespace e2d
|
||||
const auto resolved_url = resolve_url(url);
|
||||
const auto scheme_iter = schemes.find(resolved_url.scheme());
|
||||
return (scheme_iter != schemes.cend() && scheme_iter->second)
|
||||
? stdex::invoke(
|
||||
? std::invoke(
|
||||
std::forward<F>(f),
|
||||
scheme_iter->second,
|
||||
resolved_url.path())
|
||||
|
||||
@@ -322,7 +322,7 @@ namespace e2d
|
||||
std::lock_guard<std::recursive_mutex> guard(rmutex);
|
||||
for ( const event_listener_uptr& listener : listeners ) {
|
||||
if ( listener ) {
|
||||
stdex::invoke(f, *listener.get(), args...);
|
||||
std::invoke(f, *listener.get(), args...);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -39,7 +39,7 @@ namespace e2d
|
||||
std::lock_guard<std::recursive_mutex> guard(rmutex);
|
||||
for ( const event_listener_uptr& listener : listeners ) {
|
||||
if ( listener ) {
|
||||
stdex::invoke(f, listener.get(), args...);
|
||||
std::invoke(f, listener.get(), args...);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user