ngl_server 1.0
基于 Actor 模型的 C++ 服务器框架
serialize_lua.h File Reference

C++类型与Lua值的双向序列化框架。 More...

#include "lua.hpp"
#include <google/protobuf/repeated_field.h>
#include <google/protobuf/map.h>
#include <vector>
#include <string>
#include <map>
#include <set>
#include "actor/generated/auto/nscript_pbexample.h"
#include "actor/generated/auto/nscript_pbnet.h"
#include "actor/generated/auto/nscript_pbdb.h"

Classes

class  ngl::luaapi
struct  ngl::serialize_lua< T >
struct  ngl::serialize_lua< T * >
struct  ngl::serialize_lua< double >
struct  ngl::serialize_lua< float >
struct  ngl::serialize_lua< bool >
struct  ngl::serialize_lua< std::string >
struct  ngl::serialize_lua< const char * >
struct  ngl::serialize_lua< int8_t >
struct  ngl::serialize_lua< int16_t >
struct  ngl::serialize_lua< int32_t >
struct  ngl::serialize_lua< int64_t >
struct  ngl::serialize_lua< uint8_t >
struct  ngl::serialize_lua< uint16_t >
struct  ngl::serialize_lua< uint32_t >
struct  ngl::serialize_lua< uint64_t >
struct  ngl::serialize_lua_map
struct  ngl::serialize_lua< std::vector< T > >
struct  ngl::serialize_lua< std::set< T > >
struct  ngl::serialize_lua_table_key< T >
struct  ngl::serialize_lua_table_key< std::string >
struct  ngl::serialize_lua< std::map< KEY, VAL > >
struct  ngl::serialize_lua< std::unordered_map< KEY, VAL > >
struct  ngl::serialize_lua< google::protobuf::Map< KEY, VAL > >
struct  ngl::serialize_lua< google::protobuf::RepeatedPtrField< T > >
struct  ngl::serialize_lua< google::protobuf::RepeatedField< T > >
class  ngl::nlua_stack
class  ngl::nlua_table

Macros

#define LOG_SCRIPT(...)

Detailed Description

C++类型与Lua值的双向序列化框架。

提供模板化的C++类型与Lua栈/表之间的转换机制,支持:

  • 基本类型(int/float/bool/string等)
  • 容器类型(vector/set/map/unordered_map)
  • Protobuf容器(RepeatedField/RepeatedPtrField/Map)
  • 自定义类型(通过nlua_push/nlua_pop方法)
  • 枚举类型(自动转换为int32_t)

Macro Definition Documentation

◆ LOG_SCRIPT

#define LOG_SCRIPT ( ...)
Value:
std::cout << std::format(__VA_ARGS__) << std::endl