Changeset 6283bf15 in mainline


Ignore:
Timestamp:
2018-07-05T21:41:23Z (6 years ago)
Author:
Dzejrou <dzejrou@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
94ac2ea
Parents:
bdc981b
git-author:
Dzejrou <dzejrou@…> (2018-05-05 20:14:08)
git-committer:
Dzejrou <dzejrou@…> (2018-07-05 21:41:23)
Message:

cpp: added conditional typedefs for function-like objects

Location:
uspace/lib/cpp/include
Files:
1 added
3 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/cpp/include/impl/functional.hpp

    rbdc981b r6283bf15  
    3030#define LIBCPP_FUNCTIONAL
    3131
     32#include <internal/functional/conditional_function_typedefs.hpp>
    3233#include <internal/functional/invoke.hpp>
    3334#include <limits>
     
    639640        template<class F>
    640641        class mem_fn_t
    641         {
    642             // TODO: conditional typedefs
     642            : public conditional_function_typedefs<remove_cv_t<remove_reference_t<T>>>
     643        {
    643644            public:
    644645                mem_fn_t(F f)
  • uspace/lib/cpp/include/internal/functional/function.hpp

    rbdc981b r6283bf15  
    3030#define LIBCPP_INTERNAL_FUNCTIONAL_FUNCTION
    3131
     32#include <internal/functional/conditional_function_typedefs.hpp>
    3233#include <internal/functional/reference_wrapper.hpp>
    3334#include <typeinfo>
     
    9495    template<class R, class... Args>
    9596    class function<R(Args...)>
     97        : public aux::conditional_function_typedefs<Args...>
    9698    {
    9799        public:
    98100            using result_type = R;
    99             // TODO: conditional typedefs
    100101
    101102            /**
  • uspace/lib/cpp/include/internal/functional/reference_wrapper.hpp

    rbdc981b r6283bf15  
    3030#define LIBCPP_INTERNAL_FUNCTIONAL_REFERENCE_WRAPPER
    3131
     32#include <internal/functional/conditional_function_typedefs.hpp>
    3233#include <internal/functional/invoke.hpp>
    3334#include <type_traits>
     
    4142    template<class T>
    4243    class reference_wrapper
     44        : public aux::conditional_function_typedefs<remove_cv_t<remove_reference_t<T>>>
    4345    {
    4446        public:
    4547            using type = T;
    46             // TODO: conditional typedefs
    4748
    4849            reference_wrapper(type& val) noexcept
Note: See TracChangeset for help on using the changeset viewer.