-
Notifications
You must be signed in to change notification settings - Fork 40
/
decap_group_gen.cpp
59 lines (52 loc) · 1.54 KB
/
decap_group_gen.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
// Copyright (c) 2024 Arista Networks, Inc. All rights reserved.
// Arista Networks, Inc. Confidential and Proprietary.
#include "eos/base.h"
#include "eos/types/decap_group.h"
#include "eos/types/decap_group_impl.h"
namespace eos {
// Default constructor, sets NULL protocol type.
decap_group_t::decap_group_t() :
pimpl(std::make_shared<decap_group_impl_t>()) {}
decap_group_t::decap_group_t(std::string const & group_name,
ip_addr_t const & destination_addr,
decap_protocol_type_t protocol_type) :
pimpl(std::make_shared<decap_group_impl_t>(
group_name,
destination_addr,
protocol_type
)) {}
EOS_SDK_PUBLIC decap_group_t::decap_group_t(
const decap_group_t& other) :
pimpl(std::make_shared<decap_group_impl_t>(
*other.pimpl)) {}
EOS_SDK_PUBLIC decap_group_t&
decap_group_t::operator=(
decap_group_t const & other)
{
if(this != &other) {
pimpl = std::make_shared<decap_group_impl_t>(
*other.pimpl);
}
return *this;
}
EOS_SDK_PUBLIC decap_group_t::decap_group_t(
decap_group_t && other) noexcept :
pimpl(std::move(other.pimpl)) {}
EOS_SDK_PUBLIC decap_group_t&
decap_group_t::operator=(
decap_group_t && other) noexcept
{
if(this != &other) {
std::swap(pimpl, other.pimpl);
}
return *this;
}
EOS_SDK_PUBLIC void *
decap_group_t::operator new( std::size_t size ) {
return ::operator new( size );
}
EOS_SDK_PUBLIC void
decap_group_t::operator delete( void * p ) noexcept {
::operator delete( p );
}
} // namespace eos