Dash Core Source Documentation (0.16.0.1)

Find detailed information regarding the Dash Core source code.

no_transience_policy.hpp
Go to the documentation of this file.
1 //
2 // immer: immutable data structures for C++
3 // Copyright (C) 2016, 2017, 2018 Juan Pedro Bolivar Puente
4 //
5 // This software is distributed under the Boost Software License, Version 1.0.
6 // See accompanying file LICENSE or copy at http://boost.org/LICENSE_1_0.txt
7 //
8 
9 #pragma once
10 
11 namespace immer {
12 
18 {
19  template <typename>
20  struct apply
21  {
22  struct type
23  {
24  struct edit {};
25 
26  struct owner
27  {
28  operator edit () const { return {}; }
29  owner& operator=(const owner&) { return *this; };
30  };
31 
32  struct ownee
33  {
34  ownee& operator=(edit) { return *this; };
35  bool can_mutate(edit) const { return false; }
36  bool owned() const { return false; }
37  };
38 
39  static owner noone;
40  };
41  };
42 };
43 
44 template <typename HP>
47 
48 } // namespace immer
Released under the MIT license