CDT  v4.2.0
инструменты разработчика
ignore.hpp
См. документацию.
1#pragma once
2
3#include "datastream.hpp"
4
5namespace eosio {
19 template <typename T>
20 struct [[eosio::ignore]] ignore {};
21
25 template <typename T>
27 constexpr ignore_wrapper() {}
28 constexpr ignore_wrapper(T val) : value(val) {}
29 constexpr ignore_wrapper(ignore<T> val) {}
30 constexpr inline T get() { return value; }
31 constexpr operator T() { return value; }
32 constexpr operator ignore<T>() { return {}; }
34 };
35
45 template<typename DataStream, typename T>
46 inline DataStream& operator<<(DataStream& ds, const ::eosio::ignore_wrapper<T>& val) {
47 ds << val.value;
48 return ds;
49 }
50
60 template<typename DataStream, typename T>
61 inline DataStream& operator<<(DataStream& ds, const ::eosio::ignore<T>& val) {
62 return ds;
63 }
64
73 template<typename DataStream, typename T>
74 inline DataStream& operator>>(DataStream& ds, ::eosio::ignore<T>&) {
75 return ds;
76 }
77}