aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/yt/memory/serialize.h
blob: 1f7dec38c003558494aea0f1c37047bd141da386 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#pragma once

#include "intrusive_ptr.h"

#include <util/ysaveload.h>

////////////////////////////////////////////////////////////////////////////////

template <class T>
class TSerializer<NYT::TIntrusivePtr<T>>
{
public:
    static inline void Save(IOutputStream* output, const NYT::TIntrusivePtr<T>& ptr);
    static inline void Load(IInputStream* input, NYT::TIntrusivePtr<T>& ptr);
};

////////////////////////////////////////////////////////////////////////////////

#define SERIALIZE_PTR_INL_H_
#include "serialize-inl.h"
#undef SERIALIZE_PTR_INL_H_