.. _program_listing_file_include_rosidl_runtime_cpp_type_description_key_value__struct.hpp: Program Listing for File key_value__struct.hpp ============================================== |exhale_lsh| :ref:`Return to documentation for file ` (``include/rosidl_runtime_cpp/type_description/key_value__struct.hpp``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp // DO NOT EDIT MANUALLY - this copied file managed by copy_type_description_generated_sources.bash // generated from rosidl_generator_cpp/resource/idl__struct.hpp.em // with input from type_description_interfaces:msg/KeyValue.idl // generated code does not contain a copyright notice #ifndef ROSIDL_RUNTIME_CPP__TYPE_DESCRIPTION__KEY_VALUE__STRUCT_HPP_ #define ROSIDL_RUNTIME_CPP__TYPE_DESCRIPTION__KEY_VALUE__STRUCT_HPP_ #include #include #include #include #include #include "rosidl_runtime_cpp/bounded_vector.hpp" #include "rosidl_runtime_cpp/message_initialization.hpp" #ifndef _WIN32 # define DEPRECATED__rosidl_runtime_cpp__type_description__KeyValue __attribute__((deprecated)) #else # define DEPRECATED__rosidl_runtime_cpp__type_description__KeyValue __declspec(deprecated) #endif namespace rosidl_runtime_cpp { namespace type_description { // message struct template struct KeyValue_ { using Type = KeyValue_; explicit KeyValue_(rosidl_runtime_cpp::MessageInitialization _init = rosidl_runtime_cpp::MessageInitialization::ALL) { if (rosidl_runtime_cpp::MessageInitialization::ALL == _init || rosidl_runtime_cpp::MessageInitialization::ZERO == _init) { this->key = ""; this->value = ""; } } explicit KeyValue_(const ContainerAllocator & _alloc, rosidl_runtime_cpp::MessageInitialization _init = rosidl_runtime_cpp::MessageInitialization::ALL) : key(_alloc), value(_alloc) { if (rosidl_runtime_cpp::MessageInitialization::ALL == _init || rosidl_runtime_cpp::MessageInitialization::ZERO == _init) { this->key = ""; this->value = ""; } } // field types and members using _key_type = std::basic_string, typename std::allocator_traits::template rebind_alloc>; _key_type key; using _value_type = std::basic_string, typename std::allocator_traits::template rebind_alloc>; _value_type value; // setters for named parameter idiom Type & set__key( const std::basic_string, typename std::allocator_traits::template rebind_alloc> & _arg) { this->key = _arg; return *this; } Type & set__value( const std::basic_string, typename std::allocator_traits::template rebind_alloc> & _arg) { this->value = _arg; return *this; } // constant declarations // pointer types using RawPtr = rosidl_runtime_cpp::type_description::KeyValue_ *; using ConstRawPtr = const rosidl_runtime_cpp::type_description::KeyValue_ *; using SharedPtr = std::shared_ptr>; using ConstSharedPtr = std::shared_ptr const>; template>> using UniquePtrWithDeleter = std::unique_ptr, Deleter>; using UniquePtr = UniquePtrWithDeleter<>; template>> using ConstUniquePtrWithDeleter = std::unique_ptr const, Deleter>; using ConstUniquePtr = ConstUniquePtrWithDeleter<>; using WeakPtr = std::weak_ptr>; using ConstWeakPtr = std::weak_ptr const>; // pointer types similar to ROS 1, use SharedPtr / ConstSharedPtr instead // NOTE: Can't use 'using' here because GNU C++ can't parse attributes properly typedef DEPRECATED__rosidl_runtime_cpp__type_description__KeyValue std::shared_ptr> Ptr; typedef DEPRECATED__rosidl_runtime_cpp__type_description__KeyValue std::shared_ptr const> ConstPtr; // comparison operators bool operator==(const KeyValue_ & other) const { if (this->key != other.key) { return false; } if (this->value != other.value) { return false; } return true; } bool operator!=(const KeyValue_ & other) const { return !this->operator==(other); } }; // struct KeyValue_ // alias to use template instance with default allocator using KeyValue = rosidl_runtime_cpp::type_description::KeyValue_>; // constant definitions } // namespace type_description } // namespace rosidl_runtime_cpp #endif // ROSIDL_RUNTIME_CPP__TYPE_DESCRIPTION__KEY_VALUE__STRUCT_HPP_