84#ifndef __SDOM_IDataObject_HPP__
85#define __SDOM_IDataObject_HPP__
117 for (
const auto& kv : tbl)
119 std::string k = kv.first.as<std::string>();
120 if (std::equal(k.begin(), k.end(), key.begin(), key.end(),
121 [](
char a,
char b) {
return std::tolower(a) == std::tolower(b); }))
123 return kv.second.as<T>();
126 return default_value;
148 std::string typeNameLocal =
"IDataObject";
Static container for ANSI escape sequences for terminal text formatting and colorization.
static const std::string RESET
ANSI escape sequence to reset formatting.
Definition SDOM_CLR.hpp:245
static const std::string LT_CYAN
ANSI escape sequence for light cyan foreground.
Definition SDOM_CLR.hpp:281
static const std::string CYAN
ANSI escape sequence for cyan foreground.
Definition SDOM_CLR.hpp:273
Definition SDOM_IDataObject.hpp:107
void registerLuaBindings(const std::string &typeName, sol::state_view lua)
Definition SDOM_IDataObject.hpp:136
void setName(const std::string &newName)
Definition SDOM_IDataObject.hpp:130
virtual void _registerLuaBindings(const std::string &typeName, sol::state_view lua)
Definition SDOM_IDataObject.hpp:143
std::string getName() const
Definition SDOM_IDataObject.hpp:129
sol::usertype< IDataObject > objHandleType_
Definition SDOM_IDataObject.hpp:154
static T lua_value_case_insensitive(const sol::table &tbl, const std::string &key, const T &default_value)
Definition SDOM_IDataObject.hpp:115
virtual bool onUnitTest() override
Runs unit tests for this object.
Definition SDOM_IDataObject.hpp:112
std::string name_
Definition SDOM_IDataObject.hpp:160
Interface for unit testing objects in SDOM.
Definition SDOM_IUnitTest.hpp:31
Contains all core classes and utilities for the SDOM library.
Definition lua_BindHelpers.hpp:7