TorchCraftAI
A bot for machine learning research on StarCraft: Brood War
syntax.h
1 /*
2  * Copyright (c) 2017-present, Facebook, Inc.
3  *
4  * This source code is licensed under the MIT license found in the
5  * LICENSE file in the root directory of this source tree.
6  */
7 
8 #pragma once
9 
10 #define CPI_ARG(T, name) \
11  auto name(const T& new_##name)->decltype(*this) { \
12  this->name##_ = new_##name; \
13  return *this; \
14  } \
15  auto name(T&& new_##name)->decltype(*this) { \
16  this->name##_ = std::move(new_##name); \
17  return *this; \
18  } \
19  const T& name() const noexcept { \
20  return this->name##_; \
21  } \
22  T name##_