diff --git a/crates/codegen/src/unrealcpp.rs b/crates/codegen/src/unrealcpp.rs index bf3f0f3e04d..d5de3a9cf3b 100644 --- a/crates/codegen/src/unrealcpp.rs +++ b/crates/codegen/src/unrealcpp.rs @@ -769,7 +769,7 @@ impl Lang for UnrealCpp<'_> { let mut files: Vec = vec![]; // First, collect and generate all optional types - let optional_types = collect_optional_types(module); + let (optional_types, result_types) = collect_wrapper_types(module); for optional_name in optional_types { let module_name = &self.module_name; let module_name_pascal = module_name.to_case(Case::Pascal); @@ -783,6 +783,20 @@ impl Lang for UnrealCpp<'_> { }); } + for (ok_name, error_name) in result_types { + let module_name = &self.module_name; + let module_name_pascal = module_name.to_case(Case::Pascal); + let filename = format!( + "Source/{module_name}/Public/ModuleBindings/Results/{module_name_pascal}Result{ok_name}{error_name}.g.h" + ); + + let content = generate_result_type(&ok_name, &error_name, module, &self.get_api_macro(), self.module_name); + files.push(OutputFile { + filename, + code: content, + }); + } + // Generate the main SpacetimeDBClient file with proper manual includes let mut includes = HashSet::::new(); @@ -3913,33 +3927,49 @@ impl UnrealCppAutogen { // Helpers // --------------------------------------------------------------------------- -fn collect_optional_types(module: &ModuleDef) -> HashSet { +// Unified helper function to collect special wrapper types (optionals and results) +fn collect_wrapper_types(module: &ModuleDef) -> (HashSet, HashSet<(String, String)>) { let mut optional_types = HashSet::new(); + let mut result_types = HashSet::new(); - // Helper function to collect from a type - fn collect_from_type(module: &ModuleDef, ty: &AlgebraicTypeUse, out: &mut HashSet) { + // Helper function to recursively collect from a type + fn collect_from_type( + module: &ModuleDef, + ty: &AlgebraicTypeUse, + optional_types: &mut HashSet, + result_types: &mut HashSet<(String, String)>, + ) { match ty { AlgebraicTypeUse::Option(inner) => { // Generate the optional type name let optional_name = get_optional_type_name(module, inner); - out.insert(optional_name); + optional_types.insert(optional_name); // Recursively collect from inner type - collect_from_type(module, inner, out); + collect_from_type(module, inner, optional_types, result_types); + } + AlgebraicTypeUse::Result { ok_ty, err_ty } => { + // Generate the result type name components + let ok_name = get_type_name_for_result(module, ok_ty); + let err_name = get_type_name_for_result(module, err_ty); + result_types.insert((ok_name, err_name)); + // Recursively collect from both inner types + collect_from_type(module, ok_ty, optional_types, result_types); + collect_from_type(module, err_ty, optional_types, result_types); } AlgebraicTypeUse::Array(elem) => { - collect_from_type(module, elem, out); + collect_from_type(module, elem, optional_types, result_types); } AlgebraicTypeUse::Ref(r) => { - // Check if the referenced type contains optionals + // Check if the referenced type contains optionals or results match &module.typespace_for_generate()[*r] { AlgebraicTypeDef::Product(product) => { for (_, field_ty) in &product.elements { - collect_from_type(module, field_ty, out); + collect_from_type(module, field_ty, optional_types, result_types); } } AlgebraicTypeDef::Sum(sum) => { for (_, variant_ty) in &sum.variants { - collect_from_type(module, variant_ty, out); + collect_from_type(module, variant_ty, optional_types, result_types); } } _ => {} @@ -3953,7 +3983,7 @@ fn collect_optional_types(module: &ModuleDef) -> HashSet { for (_, product_type_ref) in iter_table_names_and_types(module) { let product_type = module.typespace_for_generate()[product_type_ref].as_product().unwrap(); for (_, field_ty) in &product_type.elements { - collect_from_type(module, field_ty, &mut optional_types); + collect_from_type(module, field_ty, &mut optional_types, &mut result_types); } } @@ -3962,12 +3992,12 @@ fn collect_optional_types(module: &ModuleDef) -> HashSet { match &module.typespace_for_generate()[typ.ty] { AlgebraicTypeDef::Product(product) => { for (_, field_ty) in &product.elements { - collect_from_type(module, field_ty, &mut optional_types); + collect_from_type(module, field_ty, &mut optional_types, &mut result_types); } } AlgebraicTypeDef::Sum(sum) => { for (_, variant_ty) in &sum.variants { - collect_from_type(module, variant_ty, &mut optional_types); + collect_from_type(module, variant_ty, &mut optional_types, &mut result_types); } } _ => {} @@ -3977,22 +4007,28 @@ fn collect_optional_types(module: &ModuleDef) -> HashSet { // Collect from reducer parameters for reducer in iter_reducers(module) { for (_, param_ty) in &reducer.params_for_generate.elements { - collect_from_type(module, param_ty, &mut optional_types); + collect_from_type(module, param_ty, &mut optional_types, &mut result_types); } } - // Collect from procedure parameters + // Collect from procedure parameters and return types for procedure in iter_procedures(module) { for (_, param_ty) in &procedure.params_for_generate.elements { - collect_from_type(module, param_ty, &mut optional_types); + collect_from_type(module, param_ty, &mut optional_types, &mut result_types); } - collect_from_type(module, &procedure.return_type_for_generate, &mut optional_types); + collect_from_type( + module, + &procedure.return_type_for_generate, + &mut optional_types, + &mut result_types, + ); } - optional_types + + (optional_types, result_types) } // Helper function to get C++ type for array elements in optional arrays -fn get_cpp_type_for_array_element(elem_type_str: &str, _: &ModuleDef, module_name: &str) -> String { +fn get_cpp_type_for_array_element(elem_type_str: &str, module: &ModuleDef, module_name: &str) -> String { match elem_type_str { "Bool" => "bool".to_string(), "I8" | "Int8" => "int8".to_string(), @@ -4022,7 +4058,25 @@ fn get_cpp_type_for_array_element(elem_type_str: &str, _: &ModuleDef, module_nam format!("F{module_name_pascal}OptionalInt32") } _ => { - format!("E{elem_type_str}Type") + let is_enum = module.types().any(|type_def| { + let type_name = type_def + .name + .name_segments() + .last() + .map(|id| id.deref().to_string()) + .unwrap_or_else(|| "Unnamed".to_string()); + type_name == elem_type_str + && matches!( + module.typespace_for_generate()[type_def.ty], + AlgebraicTypeDef::PlainEnum(_) + ) + }); + + if is_enum { + format!("E{elem_type_str}Type") + } else { + format!("F{elem_type_str}Type") + } } } } @@ -4059,6 +4113,10 @@ fn get_array_element_type_name(module: &ModuleDef, elem: &AlgebraicTypeUse) -> S // Handle optional elements in arrays like Vec> get_optional_type_name(module, nested_inner) } + AlgebraicTypeUse::Result { ok_ty, err_ty } => { + // Handle result elements in arrays like Vec> + get_result_type_name(module, ok_ty, err_ty) + } _ => "Unknown".to_string(), } } @@ -4104,17 +4162,17 @@ fn get_optional_type_name(module: &ModuleDef, inner: &AlgebraicTypeUse) -> Strin let inner_optional_name = get_optional_type_name(module, nested_inner); format!("Optional{inner_optional_name}") } + AlgebraicTypeUse::Result { ok_ty, err_ty } => { + let result_name = get_result_type_name(module, ok_ty, err_ty); + format!("Optional{result_name}") + } _ => "OptionalUnknown".to_string(), } } -// Generate the content for an optional type file -fn generate_optional_type(optional_name: &str, module: &ModuleDef, api_macro: &str, module_name: &str) -> String { - // Extract the inner type from the optional name - let inner_type_str = optional_name.strip_prefix("Optional").unwrap_or(optional_name); - - // Determine the C++ type for the inner value - let cpp_inner_type = match inner_type_str { +// Helper function to determine C++ type from type name string for result types +fn determine_cpp_type_for_result(type_name: &str, module: &ModuleDef, module_name: &str) -> String { + match type_name { "Bool" => "bool".to_string(), "Int8" => "int8".to_string(), "UInt8" => "uint8".to_string(), @@ -4135,36 +4193,41 @@ fn generate_optional_type(optional_name: &str, module: &ModuleDef, api_macro: &s "ConnectionId" => "FSpacetimeDBConnectionId".to_string(), "Timestamp" => "FSpacetimeDBTimestamp".to_string(), "TimeDuration" => "FSpacetimeDBTimeDuration".to_string(), - "ScheduleAt" => "FSpacetimeDBScheduleAt".to_string(), "Uuid" => "FSpacetimeDBUuid".to_string(), - "Array" => "TArray".to_string(), // Fallback for generic array type (should not be used with new system) - _ if inner_type_str.starts_with("Optional") => { - // Handle nested optionals like OptionalOptionalString + "ScheduleAt" => "FSpacetimeDBScheduleAt".to_string(), + "Unit" => "FSpacetimeDBUnit".to_string(), + _ if type_name.starts_with("Optional") => { + // Handle optional types like OptionalString let module_name_pascal = module_name.to_case(Case::Pascal); - format!("F{module_name_pascal}{inner_type_str}") + format!("F{module_name_pascal}{type_name}") } - _ if inner_type_str.starts_with("VecOptional") => { + _ if type_name.starts_with("VecOptional") => { // Handle specific optional array types like OptionalVecOptionalI32, OptionalVecOptionalString, etc. - let elem_type_str = &inner_type_str[11..]; // Remove "VecOptional" prefix + let elem_type_str = &type_name[11..]; // Remove "VecOptional" prefix let module_name_pascal = module_name.to_case(Case::Pascal); format!("TArray") } - _ if inner_type_str.starts_with("Vec") => { - // Handle OptionalVecXxx -> should use TArray - let elem_type_str = &inner_type_str[3..]; // Remove "Vec" prefix + _ if type_name.starts_with("Vec") => { + // Handle array types like VecInt32 + let elem_type_str = &type_name[3..]; // Remove "Vec" prefix let cpp_elem_type = get_cpp_type_for_array_element(elem_type_str, module, module_name); format!("TArray<{cpp_elem_type}>") } + _ if type_name.starts_with("Result") => { + // Handle nested result types + let module_name_pascal = module_name.to_case(Case::Pascal); + format!("F{module_name_pascal}{type_name}") + } _ => { // For custom types, check if it's an enum or struct let is_enum = module.types().any(|type_def| { - let type_name = type_def + let type_name_from_def = type_def .name .name_segments() .last() .map(|id| id.deref().to_string()) .unwrap_or_else(|| "Unnamed".to_string()); - type_name == inner_type_str + type_name_from_def == type_name && matches!( module.typespace_for_generate()[type_def.ty], AlgebraicTypeDef::PlainEnum(_) @@ -4172,45 +4235,98 @@ fn generate_optional_type(optional_name: &str, module: &ModuleDef, api_macro: &s }); if is_enum { - format!("E{inner_type_str}Type") + format!("E{type_name}Type") } else { - format!("F{inner_type_str}Type") + format!("F{type_name}Type") } } - }; + } +} + +// Helper function to check if a type name is blueprintable +fn is_type_name_blueprintable(type_name: &str) -> bool { + match type_name { + // Non-blueprintable primitive types + "Int8" | "Int16" | "UInt16" | "UInt32" | "UInt64" => false, + + // Blueprintable types + "Bool" | "Int32" | "Int64" | "Float" | "Double" | "String" | "Identity" | "ConnectionId" | "Timestamp" + | "TimeDuration" | "ScheduleAt" | "Int128" | "UInt128" | "Int256" | "UInt256" | "Unit" => true, + + // Optional types - check the inner type + _ if type_name.starts_with("Optional") => { + let inner_type = &type_name[8..]; // Remove "Optional" prefix + is_type_name_blueprintable(inner_type) + } - // Determine if we need extra includes - let mut extra_includes = vec![]; - match inner_type_str { + // Result types - both Ok and Err types must be blueprintable + // Parse ResultXXXYYY to extract both type names + _ if type_name.starts_with("Result") => { + // This is complex - we'd need to parse "ResultInt32String" into "Int32" and "String" + // For now, be conservative and return true since Result wrapper itself is a USTRUCT + // The individual fields will have their own blueprintable checks + true + } + + // Vec types - arrays are blueprintable if element is blueprintable + _ if type_name.starts_with("Vec") => { + let elem_type = &type_name[3..]; // Remove "Vec" prefix + is_type_name_blueprintable(elem_type) + } + + // Custom types (structs/enums) are always blueprintable + _ => true, + } +} + +// Helper function to add includes for a type name +fn add_includes_for_type_name(type_name: &str, includes: &mut Vec, module_name: &str) { + match type_name { "Identity" | "ConnectionId" | "Timestamp" | "TimeDuration" | "ScheduleAt" | "Uuid" => { - extra_includes.push("Types/Builtins.h".to_string()); + includes.push("Types/Builtins.h".to_string()); } "Int128" | "UInt128" | "Int256" | "UInt256" => { - extra_includes.push("Types/LargeIntegers.h".to_string()); + includes.push("Types/LargeIntegers.h".to_string()); + } + "Unit" => { + includes.push("Types/UnitType.h".to_string()); } "String" | "Bool" | "Int8" | "UInt8" | "Int16" | "UInt16" | "Int32" | "UInt32" | "Int64" | "UInt64" - | "Float" | "Double" | "Array" => { + | "Float" | "Double" => { // Basic types, no extra includes needed } - _ if inner_type_str.starts_with("Vec") => { - // Not required - } - _ if inner_type_str.starts_with("OptionalVec") => { - // Not required + _ if type_name.starts_with("Vec") => { + // Array types - no extra include needed for TArray itself } - _ if inner_type_str.starts_with("Optional") => { + _ if type_name.starts_with("Optional") => { // Nested optional, need its header let module_name_pascal = module_name.to_case(Case::Pascal); - extra_includes.push(format!( - "ModuleBindings/Optionals/{module_name_pascal}{inner_type_str}.g.h" - )); + includes.push(format!("ModuleBindings/Optionals/{module_name_pascal}{type_name}.g.h")); + } + _ if type_name.starts_with("Result") => { + // Nested result, need its header + let module_name_pascal = module_name.to_case(Case::Pascal); + includes.push(format!("ModuleBindings/Results/{module_name_pascal}{type_name}.g.h")); } - _ if !inner_type_str.starts_with("Int") && !inner_type_str.starts_with("UInt") => { + _ if !type_name.starts_with("Int") && !type_name.starts_with("UInt") => { // Custom type, need its header - extra_includes.push(format!("ModuleBindings/Types/{inner_type_str}Type.g.h")); + includes.push(format!("ModuleBindings/Types/{type_name}Type.g.h")); } _ => {} } +} + +// Generate the content for an optional type file +fn generate_optional_type(optional_name: &str, module: &ModuleDef, api_macro: &str, module_name: &str) -> String { + // Extract the inner type from the optional name + let inner_type_str = optional_name.strip_prefix("Optional").unwrap_or(optional_name); + + // Determine the C++ type for the inner value + let cpp_inner_type = determine_cpp_type_for_result(inner_type_str, module, module_name); + + // Determine if we need extra includes + let mut extra_includes = vec![]; + add_includes_for_type_name(inner_type_str, &mut extra_includes, module_name); let extra_includes_refs: Vec<&str> = extra_includes.iter().map(|s| s.as_str()).collect(); let module_name_pascal = module_name.to_case(Case::Pascal); @@ -4235,26 +4351,7 @@ fn generate_optional_type(optional_name: &str, module: &ModuleDef, api_macro: &s // The actual value // Check if the type is blueprintable - let is_blueprintable = match inner_type_str { - "UInt16" | "UInt32" | "UInt64" => false, - _ if inner_type_str.starts_with("Vec") => { - // Check blueprintability of array element type for VecXxx types - let elem_type_str = &inner_type_str[3..]; // Remove "Vec" prefix - match elem_type_str { - "UInt16" | "UInt32" | "UInt64" => false, // Unsigned types are not blueprintable - _ => true, - } - } - _ if inner_type_str.starts_with("OptionalVec") => { - // Check blueprintability of array element type - let elem_type_str = &inner_type_str[11..]; // Remove "OptionalVec" prefix - match elem_type_str { - "U16" | "U32" | "U64" => false, // Unsigned types are not blueprintable - _ => true, - } - } - _ => true, - }; + let is_blueprintable = is_type_name_blueprintable(inner_type_str); if is_blueprintable { writeln!(output, "UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = \"SpacetimeDB\", meta = (EditCondition = \"bHasValue\"))"); @@ -4336,6 +4433,253 @@ fn generate_optional_type(optional_name: &str, module: &ModuleDef, api_macro: &s output.into_inner() } +// Get the name for a result type (e.g., "ResultStringString", "ResultInt32String") +fn get_result_type_name(module: &ModuleDef, ok_ty: &AlgebraicTypeUse, err_ty: &AlgebraicTypeUse) -> String { + let ok_name = get_type_name_for_result(module, ok_ty); + let err_name = get_type_name_for_result(module, err_ty); + format!("Result{ok_name}{err_name}") +} + +// Helper function to get the type name component for result types +fn get_type_name_for_result(module: &ModuleDef, ty: &AlgebraicTypeUse) -> String { + match ty { + AlgebraicTypeUse::Primitive(p) => match p { + PrimitiveType::Bool => "Bool".to_string(), + PrimitiveType::I8 => "Int8".to_string(), + PrimitiveType::U8 => "UInt8".to_string(), + PrimitiveType::I16 => "Int16".to_string(), + PrimitiveType::U16 => "UInt16".to_string(), + PrimitiveType::I32 => "Int32".to_string(), + PrimitiveType::U32 => "UInt32".to_string(), + PrimitiveType::I64 => "Int64".to_string(), + PrimitiveType::U64 => "UInt64".to_string(), + PrimitiveType::F32 => "Float".to_string(), + PrimitiveType::F64 => "Double".to_string(), + PrimitiveType::I128 => "Int128".to_string(), + PrimitiveType::U128 => "UInt128".to_string(), + PrimitiveType::I256 => "Int256".to_string(), + PrimitiveType::U256 => "UInt256".to_string(), + }, + AlgebraicTypeUse::String => "String".to_string(), + AlgebraicTypeUse::Identity => "Identity".to_string(), + AlgebraicTypeUse::ConnectionId => "ConnectionId".to_string(), + AlgebraicTypeUse::Timestamp => "Timestamp".to_string(), + AlgebraicTypeUse::TimeDuration => "TimeDuration".to_string(), + AlgebraicTypeUse::ScheduleAt => "ScheduleAt".to_string(), + AlgebraicTypeUse::Uuid => "Uuid".to_string(), + AlgebraicTypeUse::Unit => "Unit".to_string(), + AlgebraicTypeUse::Array(elem) => { + // Generate specific array types based on element type + let elem_name = get_array_element_type_name(module, elem); + format!("Vec{elem_name}") + } + AlgebraicTypeUse::Ref(r) => type_ref_name(module, *r), + AlgebraicTypeUse::Option(inner) => { + // Handle optional types like Option + let inner_name = get_type_name_for_result(module, inner); + format!("Optional{inner_name}") + } + AlgebraicTypeUse::Result { ok_ty, err_ty } => { + // Handle nested results like Result, bool> + get_result_type_name(module, ok_ty, err_ty) + } + AlgebraicTypeUse::Never => "Never".to_string(), + } +} + +// Generate the content for a result type file +fn generate_result_type( + ok_type_name: &str, + err_type_name: &str, + module: &ModuleDef, + api_macro: &str, + module_name: &str, +) -> String { + // Determine the C++ type for the ok value + let cpp_ok_type = determine_cpp_type_for_result(ok_type_name, module, module_name); + + // Determine the C++ type for the err value + let cpp_err_type = determine_cpp_type_for_result(err_type_name, module, module_name); + + // Determine if we need extra includes + let mut extra_includes = vec![]; + add_includes_for_type_name(ok_type_name, &mut extra_includes, module_name); + add_includes_for_type_name(err_type_name, &mut extra_includes, module_name); + + let extra_includes_refs: Vec<&str> = extra_includes.iter().map(|s| s.as_str()).collect(); + let module_name_pascal = module_name.to_case(Case::Pascal); + let result_name = format!("Result{ok_type_name}{err_type_name}"); + let struct_name = format!("F{module_name_pascal}{result_name}"); + let header_name = format!("{module_name_pascal}{result_name}"); + let mut output = UnrealCppAutogen::new(&extra_includes_refs, &header_name, false); + + writeln!(output, "USTRUCT(BlueprintType)"); + writeln!(output, "struct {api_macro} {struct_name}"); + writeln!(output, "{{"); + output.indent(1); + writeln!(output, "GENERATED_BODY()"); + writeln!(output); + + // Is ok flag + writeln!( + output, + "UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = \"SpacetimeDB\")" + ); + writeln!(output, "bool bIsOk = false;"); + writeln!(output); + + // The ok value + let is_ok_blueprintable = is_type_name_blueprintable(ok_type_name); + if is_ok_blueprintable { + writeln!(output, "UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = \"SpacetimeDB\", meta = (EditCondition = \"bIsOk\"))"); + } else { + writeln!( + output, + "// NOTE: {cpp_ok_type} field not exposed to Blueprint due to non-blueprintable type" + ); + } + writeln!(output, "{cpp_ok_type} OkValue;"); + writeln!(output); + + // The err value + let is_err_blueprintable = is_type_name_blueprintable(err_type_name); + if is_err_blueprintable { + writeln!(output, "UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = \"SpacetimeDB\", meta = (EditCondition = \"!bIsOk\"))"); + } else { + writeln!( + output, + "// NOTE: {cpp_err_type} field not exposed to Blueprint due to non-blueprintable type" + ); + } + writeln!(output, "{cpp_err_type} ErrValue;"); + writeln!(output); + + // Constructors + writeln!(output, "{struct_name}() = default;"); + writeln!(output); + + // Ok constructor + writeln!(output, "static {struct_name} Ok(const {cpp_ok_type}& InValue)"); + writeln!(output, "{{"); + output.indent(1); + writeln!(output, "{struct_name} Result;"); + writeln!(output, "Result.bIsOk = true;"); + writeln!(output, "Result.OkValue = InValue;"); + writeln!(output, "return Result;"); + output.dedent(1); + writeln!(output, "}}"); + writeln!(output); + + // Err constructor + writeln!(output, "static {struct_name} Err(const {cpp_err_type}& InValue)"); + writeln!(output, "{{"); + output.indent(1); + writeln!(output, "{struct_name} Result;"); + writeln!(output, "Result.bIsOk = false;"); + writeln!(output, "Result.ErrValue = InValue;"); + writeln!(output, "return Result;"); + output.dedent(1); + writeln!(output, "}}"); + writeln!(output); + + // Helper methods + writeln!(output, "bool IsOk() const {{ return bIsOk; }}"); + writeln!(output, "bool IsErr() const {{ return !bIsOk; }}"); + writeln!(output); + + writeln!(output, "const {cpp_ok_type}& GetOk() const"); + writeln!(output, "{{"); + output.indent(1); + writeln!(output, "check(bIsOk);"); + writeln!(output, "return OkValue;"); + output.dedent(1); + writeln!(output, "}}"); + writeln!(output); + + writeln!(output, "const {cpp_err_type}& GetErr() const"); + writeln!(output, "{{"); + output.indent(1); + writeln!(output, "check(!bIsOk);"); + writeln!(output, "return ErrValue;"); + output.dedent(1); + writeln!(output, "}}"); + writeln!(output); + + // Operators + writeln!(output, "FORCEINLINE bool operator==(const {struct_name}& Other) const"); + writeln!(output, "{{"); + output.indent(1); + writeln!(output, "if (bIsOk != Other.bIsOk) return false;"); + writeln!(output, "if (bIsOk)"); + writeln!(output, "{{"); + output.indent(1); + writeln!(output, "return OkValue == Other.OkValue;"); + output.dedent(1); + writeln!(output, "}}"); + writeln!(output, "else"); + writeln!(output, "{{"); + output.indent(1); + writeln!(output, "return ErrValue == Other.ErrValue;"); + output.dedent(1); + writeln!(output, "}}"); + output.dedent(1); + writeln!(output, "}}"); + writeln!(output); + + writeln!(output, "FORCEINLINE bool operator!=(const {struct_name}& Other) const"); + writeln!(output, "{{"); + output.indent(1); + writeln!(output, "return !(*this == Other);"); + output.dedent(1); + writeln!(output, "}}"); + + output.dedent(1); + writeln!(output, "}};"); + writeln!(output); + + // Add GetTypeHash implementation + writeln!(output, "/**"); + writeln!(output, " * Custom hash function for {struct_name}."); + writeln!(output, " * Hashes the bIsOk flag and the appropriate value."); + writeln!(output, " * @param Result The {struct_name} instance to hash."); + writeln!(output, " * @return The combined hash value."); + writeln!(output, " */"); + writeln!(output, "FORCEINLINE uint32 GetTypeHash(const {struct_name}& Result)"); + writeln!(output, "{{"); + output.indent(1); + writeln!(output, "uint32 Hash = GetTypeHash(Result.bIsOk);"); + writeln!(output, "if (Result.bIsOk)"); + writeln!(output, "{{"); + output.indent(1); + writeln!(output, "Hash = HashCombine(Hash, GetTypeHash(Result.OkValue));"); + output.dedent(1); + writeln!(output, "}}"); + writeln!(output, "else"); + writeln!(output, "{{"); + output.indent(1); + writeln!(output, "Hash = HashCombine(Hash, GetTypeHash(Result.ErrValue));"); + output.dedent(1); + writeln!(output, "}}"); + writeln!(output, "return Hash;"); + output.dedent(1); + writeln!(output, "}}"); + writeln!(output); + + // BSATN serialization support + writeln!(output, "namespace UE::SpacetimeDB"); + writeln!(output, "{{"); + + writeln!(output, " UE_SPACETIMEDB_ENABLE_TARRAY({struct_name});"); + writeln!(output); + writeln!( + output, + " UE_SPACETIMEDB_RESULT({struct_name}, bIsOk, OkValue, ErrValue);" + ); + writeln!(output, "}}"); + + output.into_inner() +} + fn autogen_cpp_struct( module: &ModuleDef, name: &str, // Changed to &str @@ -5027,8 +5371,8 @@ fn cpp_ty_fmt_impl<'a>( AlgebraicTypeUse::ConnectionId => f.write_str("FSpacetimeDBConnectionId"), AlgebraicTypeUse::Timestamp => f.write_str("FSpacetimeDBTimestamp"), AlgebraicTypeUse::TimeDuration => f.write_str("FSpacetimeDBTimeDuration"), - AlgebraicTypeUse::ScheduleAt => f.write_str("FSpacetimeDBScheduleAt"), AlgebraicTypeUse::Uuid => f.write_str("FSpacetimeDBUuid"), + AlgebraicTypeUse::ScheduleAt => f.write_str("FSpacetimeDBScheduleAt"), AlgebraicTypeUse::Unit => f.write_str("FSpacetimeDBUnit"), // --------- references to user-defined types --------- @@ -5054,10 +5398,11 @@ fn cpp_ty_fmt_impl<'a>( // Result use the generated result types AlgebraicTypeUse::Result { ok_ty, err_ty } => { - let ok_type = cpp_ty_fmt_impl(module, ok_ty, module_name).to_string(); - let err_type = cpp_ty_fmt_impl(module, err_ty, module_name).to_string(); + let ok_name = get_type_name_for_result(module, ok_ty); + let err_name = get_type_name_for_result(module, err_ty); + let module_name_pascal = module_name.to_case(Case::Pascal); - write!(f, "FSpacetimeDBResult<{ok_type}, {err_type}>") + write!(f, "F{module_name_pascal}Result{ok_name}{err_name}") } AlgebraicTypeUse::Never => unreachable!("never type"), @@ -5149,7 +5494,10 @@ fn collect_includes_for_type( } Result { ok_ty, err_ty } => { // Add the result type header - out.insert("Types/Result.h".to_string()); + let result_name = get_result_type_name(module, ok_ty, err_ty); + let module_name_pascal = module_name.to_case(Case::Pascal); + let header = format!("ModuleBindings/Results/{module_name_pascal}{result_name}.g.h"); + out.insert(header); // Also collect includes for the ok and err types collect_includes_for_type(module, ok_ty, out, module_name); collect_includes_for_type(module, err_ty, out, module_name); diff --git a/sdks/unreal/src/SpacetimeDbSdk/Source/SpacetimeDbSdk/Public/BSATN/UESpacetimeDB.h b/sdks/unreal/src/SpacetimeDbSdk/Source/SpacetimeDbSdk/Public/BSATN/UESpacetimeDB.h index 2afc6b5313a..8b25806e282 100644 --- a/sdks/unreal/src/SpacetimeDbSdk/Source/SpacetimeDbSdk/Public/BSATN/UESpacetimeDB.h +++ b/sdks/unreal/src/SpacetimeDbSdk/Source/SpacetimeDbSdk/Public/BSATN/UESpacetimeDB.h @@ -682,6 +682,62 @@ namespace UE::SpacetimeDB { /** @} */ // end of CustomOptionalStructSerialization group + // ============================================================================= + // Custom Result struct Serialization + // ============================================================================= + /** + * @brief Helper macro to generate serialization for Blueprint compatible result structs + * @{ + * + * This macro creates serialize/deserialize specializations for a struct that + * mimics the behaviour of Result types by exposing an "is ok" boolean flag, + * an "ok" value field, and an "error" value field. + * + * @param StructType Name of the result wrapper struct + * @param IsOkField Name of the boolean member that signals if the result is ok + * @param OkValueField Name of the value member for the ok case + * @param ErrValueField Name of the value member for the error case + * + * Example usage: + * @code + * USTRUCT(BlueprintType) + * struct FResultStringBool { + * int32 OkValue; + * FString ErrorValue; + * bool bIsOk; + * }; + * + * namespace UE::SpacetimeDB { + * UE_SPACETIMEDB_RESULT(FResultStringBool, bIsOk, OkValue, ErrorValue); + * } + * @endcode + */ +#define UE_SPACETIMEDB_RESULT(StructType, IsOkField, OkValueField, ErrValueField) \ + template<> inline void serialize(UEWriter& w, const StructType& value) { \ + if (value.IsOkField) { \ + w.write_u8(0); /* ok tag */ \ + serialize(w, value.OkValueField); \ + } else { \ + w.write_u8(1); /* err tag */ \ + serialize(w, value.ErrValueField); \ + } \ + } \ + template<> inline StructType deserialize(UEReader& r) { \ + StructType result; \ + uint8_t tag = r.read_u8(); \ + if (tag == 0) { \ + result.IsOkField = true; \ + result.OkValueField = deserialize(r); \ + } else if (tag == 1) { \ + result.IsOkField = false; \ + result.ErrValueField = deserialize(r); \ + } else { \ + ensureMsgf(false, TEXT("Invalid result tag: %d"), tag); \ + return StructType(); \ + } \ + return result; \ + } + // ============================================================================= // UE Utility Type Serialization // ============================================================================= diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/SpacetimeDBClient.g.cpp b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/SpacetimeDBClient.g.cpp index 47d1f20494f..7a640870a2f 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/SpacetimeDBClient.g.cpp +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/SpacetimeDBClient.g.cpp @@ -61,6 +61,12 @@ #include "ModuleBindings/Tables/PkU64Table.g.h" #include "ModuleBindings/Tables/PkU8Table.g.h" #include "ModuleBindings/Tables/PkUuidTable.g.h" +#include "ModuleBindings/Tables/ResultEveryPrimitiveStructStringTable.g.h" +#include "ModuleBindings/Tables/ResultI32StringTable.g.h" +#include "ModuleBindings/Tables/ResultIdentityStringTable.g.h" +#include "ModuleBindings/Tables/ResultSimpleEnumI32Table.g.h" +#include "ModuleBindings/Tables/ResultStringI32Table.g.h" +#include "ModuleBindings/Tables/ResultVecI32StringTable.g.h" #include "ModuleBindings/Tables/ScheduledTableTable.g.h" #include "ModuleBindings/Tables/TableHoldsTableTable.g.h" #include "ModuleBindings/Tables/UniqueBoolTable.g.h" @@ -748,6 +754,42 @@ static FReducer DecodeReducer(const FReducerEvent& Event) return FReducer::InsertPrimitivesAsStrings(Args); } + if (ReducerName == TEXT("insert_result_every_primitive_struct_string")) + { + FInsertResultEveryPrimitiveStructStringArgs Args = UE::SpacetimeDB::Deserialize(Event.ReducerCall.Args); + return FReducer::InsertResultEveryPrimitiveStructString(Args); + } + + if (ReducerName == TEXT("insert_result_i32_string")) + { + FInsertResultI32StringArgs Args = UE::SpacetimeDB::Deserialize(Event.ReducerCall.Args); + return FReducer::InsertResultI32String(Args); + } + + if (ReducerName == TEXT("insert_result_identity_string")) + { + FInsertResultIdentityStringArgs Args = UE::SpacetimeDB::Deserialize(Event.ReducerCall.Args); + return FReducer::InsertResultIdentityString(Args); + } + + if (ReducerName == TEXT("insert_result_simple_enum_i32")) + { + FInsertResultSimpleEnumI32Args Args = UE::SpacetimeDB::Deserialize(Event.ReducerCall.Args); + return FReducer::InsertResultSimpleEnumI32(Args); + } + + if (ReducerName == TEXT("insert_result_string_i32")) + { + FInsertResultStringI32Args Args = UE::SpacetimeDB::Deserialize(Event.ReducerCall.Args); + return FReducer::InsertResultStringI32(Args); + } + + if (ReducerName == TEXT("insert_result_vec_i32_string")) + { + FInsertResultVecI32StringArgs Args = UE::SpacetimeDB::Deserialize(Event.ReducerCall.Args); + return FReducer::InsertResultVecI32String(Args); + } + if (ReducerName == TEXT("insert_table_holds_table")) { FInsertTableHoldsTableArgs Args = UE::SpacetimeDB::Deserialize(Event.ReducerCall.Args); @@ -1338,6 +1380,12 @@ UDbConnection::UDbConnection(const FObjectInitializer& ObjectInitializer) : Supe RegisterTable(TEXT("pk_u64"), Db->PkU64); RegisterTable(TEXT("pk_u8"), Db->PkU8); RegisterTable(TEXT("pk_uuid"), Db->PkUuid); + RegisterTable(TEXT("result_every_primitive_struct_string"), Db->ResultEveryPrimitiveStructString); + RegisterTable(TEXT("result_i32_string"), Db->ResultI32String); + RegisterTable(TEXT("result_identity_string"), Db->ResultIdentityString); + RegisterTable(TEXT("result_simple_enum_i32"), Db->ResultSimpleEnumI32); + RegisterTable(TEXT("result_string_i32"), Db->ResultStringI32); + RegisterTable(TEXT("result_vec_i32_string"), Db->ResultVecI32String); RegisterTable(TEXT("scheduled_table"), Db->ScheduledTable); RegisterTable(TEXT("table_holds_table"), Db->TableHoldsTable); RegisterTable(TEXT("unique_bool"), Db->UniqueBool); @@ -1476,6 +1524,12 @@ void URemoteTables::Initialize() PkU64 = NewObject(this); PkU8 = NewObject(this); PkUuid = NewObject(this); + ResultEveryPrimitiveStructString = NewObject(this); + ResultI32String = NewObject(this); + ResultIdentityString = NewObject(this); + ResultSimpleEnumI32 = NewObject(this); + ResultStringI32 = NewObject(this); + ResultVecI32String = NewObject(this); ScheduledTable = NewObject(this); TableHoldsTable = NewObject(this); UniqueBool = NewObject(this); @@ -1582,6 +1636,12 @@ void URemoteTables::Initialize() PkU64->PostInitialize(); PkU8->PostInitialize(); PkUuid->PostInitialize(); + ResultEveryPrimitiveStructString->PostInitialize(); + ResultI32String->PostInitialize(); + ResultIdentityString->PostInitialize(); + ResultSimpleEnumI32->PostInitialize(); + ResultStringI32->PostInitialize(); + ResultVecI32String->PostInitialize(); ScheduledTable->PostInitialize(); TableHoldsTable->PostInitialize(); UniqueBool->PostInitialize(); @@ -2055,6 +2115,30 @@ void USetReducerFlags::InsertPrimitivesAsStrings(ECallReducerFlags Flag) { FlagMap.Add("InsertPrimitivesAsStrings", Flag); } +void USetReducerFlags::InsertResultEveryPrimitiveStructString(ECallReducerFlags Flag) +{ + FlagMap.Add("InsertResultEveryPrimitiveStructString", Flag); +} +void USetReducerFlags::InsertResultI32String(ECallReducerFlags Flag) +{ + FlagMap.Add("InsertResultI32String", Flag); +} +void USetReducerFlags::InsertResultIdentityString(ECallReducerFlags Flag) +{ + FlagMap.Add("InsertResultIdentityString", Flag); +} +void USetReducerFlags::InsertResultSimpleEnumI32(ECallReducerFlags Flag) +{ + FlagMap.Add("InsertResultSimpleEnumI32", Flag); +} +void USetReducerFlags::InsertResultStringI32(ECallReducerFlags Flag) +{ + FlagMap.Add("InsertResultStringI32", Flag); +} +void USetReducerFlags::InsertResultVecI32String(ECallReducerFlags Flag) +{ + FlagMap.Add("InsertResultVecI32String", Flag); +} void USetReducerFlags::InsertTableHoldsTable(ECallReducerFlags Flag) { FlagMap.Add("InsertTableHoldsTable", Flag); @@ -2429,6 +2513,21 @@ bool URemoteReducers::InvokeDeleteFromBtreeU32(const FReducerEventContext& Conte return true; } +bool URemoteReducers::InvokeDeleteFromBtreeU32WithArgs(const FReducerEventContext& Context, const FDeleteFromBtreeU32Args& Args) +{ + if (!OnDeleteFromBtreeU32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteFromBtreeU32")); + } + return false; + } + + OnDeleteFromBtreeU32.Broadcast(Context, Args.Rows); + return true; +} + void URemoteReducers::DeleteLargeTable(const uint8 A, const uint16 B, const uint32 C, const uint64 D, const FSpacetimeDBUInt128& E, const FSpacetimeDBUInt256& F, const int8 G, const int16 H, const int32 I, const int64 J, const FSpacetimeDBInt128& K, const FSpacetimeDBInt256& L, const bool M, const float N, const double O, const FString& P, const ESimpleEnumType& Q, const FEnumWithPayloadType& R, const FUnitStructType& S, const FByteStructType& T, const FEveryPrimitiveStructType& U, const FEveryVecStructType& V) { if (!Conn) @@ -2481,6 +2580,21 @@ bool URemoteReducers::InvokeDeleteLargeTable(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeDeleteLargeTableWithArgs(const FReducerEventContext& Context, const FDeleteLargeTableArgs& Args) +{ + if (!OnDeleteLargeTable.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteLargeTable")); + } + return false; + } + + OnDeleteLargeTable.Broadcast(Context, Args); + return true; +} + void URemoteReducers::DeletePkBool(const bool B) { if (!Conn) @@ -2510,6 +2624,21 @@ bool URemoteReducers::InvokeDeletePkBool(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeDeletePkBoolWithArgs(const FReducerEventContext& Context, const FDeletePkBoolArgs& Args) +{ + if (!OnDeletePkBool.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkBool")); + } + return false; + } + + OnDeletePkBool.Broadcast(Context, Args.B); + return true; +} + void URemoteReducers::DeletePkConnectionId(const FSpacetimeDBConnectionId& A) { if (!Conn) @@ -2539,6 +2668,21 @@ bool URemoteReducers::InvokeDeletePkConnectionId(const FReducerEventContext& Con return true; } +bool URemoteReducers::InvokeDeletePkConnectionIdWithArgs(const FReducerEventContext& Context, const FDeletePkConnectionIdArgs& Args) +{ + if (!OnDeletePkConnectionId.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkConnectionId")); + } + return false; + } + + OnDeletePkConnectionId.Broadcast(Context, Args.A); + return true; +} + void URemoteReducers::DeletePkI128(const FSpacetimeDBInt128& N) { if (!Conn) @@ -2568,6 +2712,21 @@ bool URemoteReducers::InvokeDeletePkI128(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeDeletePkI128WithArgs(const FReducerEventContext& Context, const FDeletePkI128Args& Args) +{ + if (!OnDeletePkI128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkI128")); + } + return false; + } + + OnDeletePkI128.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeletePkI16(const int16 N) { if (!Conn) @@ -2597,6 +2756,21 @@ bool URemoteReducers::InvokeDeletePkI16(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeDeletePkI16WithArgs(const FReducerEventContext& Context, const FDeletePkI16Args& Args) +{ + if (!OnDeletePkI16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkI16")); + } + return false; + } + + OnDeletePkI16.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeletePkI256(const FSpacetimeDBInt256& N) { if (!Conn) @@ -2626,6 +2800,21 @@ bool URemoteReducers::InvokeDeletePkI256(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeDeletePkI256WithArgs(const FReducerEventContext& Context, const FDeletePkI256Args& Args) +{ + if (!OnDeletePkI256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkI256")); + } + return false; + } + + OnDeletePkI256.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeletePkI32(const int32 N) { if (!Conn) @@ -2655,6 +2844,21 @@ bool URemoteReducers::InvokeDeletePkI32(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeDeletePkI32WithArgs(const FReducerEventContext& Context, const FDeletePkI32Args& Args) +{ + if (!OnDeletePkI32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkI32")); + } + return false; + } + + OnDeletePkI32.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeletePkI64(const int64 N) { if (!Conn) @@ -2684,6 +2888,21 @@ bool URemoteReducers::InvokeDeletePkI64(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeDeletePkI64WithArgs(const FReducerEventContext& Context, const FDeletePkI64Args& Args) +{ + if (!OnDeletePkI64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkI64")); + } + return false; + } + + OnDeletePkI64.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeletePkI8(const int8 N) { if (!Conn) @@ -2713,6 +2932,21 @@ bool URemoteReducers::InvokeDeletePkI8(const FReducerEventContext& Context, cons return true; } +bool URemoteReducers::InvokeDeletePkI8WithArgs(const FReducerEventContext& Context, const FDeletePkI8Args& Args) +{ + if (!OnDeletePkI8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkI8")); + } + return false; + } + + OnDeletePkI8.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeletePkIdentity(const FSpacetimeDBIdentity& I) { if (!Conn) @@ -2742,6 +2976,21 @@ bool URemoteReducers::InvokeDeletePkIdentity(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeDeletePkIdentityWithArgs(const FReducerEventContext& Context, const FDeletePkIdentityArgs& Args) +{ + if (!OnDeletePkIdentity.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkIdentity")); + } + return false; + } + + OnDeletePkIdentity.Broadcast(Context, Args.I); + return true; +} + void URemoteReducers::DeletePkString(const FString& S) { if (!Conn) @@ -2771,6 +3020,21 @@ bool URemoteReducers::InvokeDeletePkString(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeDeletePkStringWithArgs(const FReducerEventContext& Context, const FDeletePkStringArgs& Args) +{ + if (!OnDeletePkString.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkString")); + } + return false; + } + + OnDeletePkString.Broadcast(Context, Args.S); + return true; +} + void URemoteReducers::DeletePkU128(const FSpacetimeDBUInt128& N) { if (!Conn) @@ -2800,6 +3064,21 @@ bool URemoteReducers::InvokeDeletePkU128(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeDeletePkU128WithArgs(const FReducerEventContext& Context, const FDeletePkU128Args& Args) +{ + if (!OnDeletePkU128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkU128")); + } + return false; + } + + OnDeletePkU128.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeletePkU16(const uint16 N) { if (!Conn) @@ -2829,6 +3108,21 @@ bool URemoteReducers::InvokeDeletePkU16(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeDeletePkU16WithArgs(const FReducerEventContext& Context, const FDeletePkU16Args& Args) +{ + if (!OnDeletePkU16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkU16")); + } + return false; + } + + OnDeletePkU16.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeletePkU256(const FSpacetimeDBUInt256& N) { if (!Conn) @@ -2858,6 +3152,21 @@ bool URemoteReducers::InvokeDeletePkU256(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeDeletePkU256WithArgs(const FReducerEventContext& Context, const FDeletePkU256Args& Args) +{ + if (!OnDeletePkU256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkU256")); + } + return false; + } + + OnDeletePkU256.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeletePkU32(const uint32 N) { if (!Conn) @@ -2887,6 +3196,21 @@ bool URemoteReducers::InvokeDeletePkU32(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeDeletePkU32WithArgs(const FReducerEventContext& Context, const FDeletePkU32Args& Args) +{ + if (!OnDeletePkU32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkU32")); + } + return false; + } + + OnDeletePkU32.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeletePkU32InsertPkU32Two(const uint32 N, const int32 Data) { if (!Conn) @@ -2916,6 +3240,21 @@ bool URemoteReducers::InvokeDeletePkU32InsertPkU32Two(const FReducerEventContext return true; } +bool URemoteReducers::InvokeDeletePkU32InsertPkU32TwoWithArgs(const FReducerEventContext& Context, const FDeletePkU32InsertPkU32TwoArgs& Args) +{ + if (!OnDeletePkU32InsertPkU32Two.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkU32InsertPkU32Two")); + } + return false; + } + + OnDeletePkU32InsertPkU32Two.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::DeletePkU32Two(const uint32 N) { if (!Conn) @@ -2945,12 +3284,27 @@ bool URemoteReducers::InvokeDeletePkU32Two(const FReducerEventContext& Context, return true; } -void URemoteReducers::DeletePkU64(const uint64 N) +bool URemoteReducers::InvokeDeletePkU32TwoWithArgs(const FReducerEventContext& Context, const FDeletePkU32TwoArgs& Args) { - if (!Conn) + if (!OnDeletePkU32Two.IsBound()) { - UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); - return; + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkU32Two")); + } + return false; + } + + OnDeletePkU32Two.Broadcast(Context, Args.N); + return true; +} + +void URemoteReducers::DeletePkU64(const uint64 N) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; } Conn->CallReducerTyped(TEXT("delete_pk_u64"), FDeletePkU64Args(N), SetCallReducerFlags); @@ -2974,6 +3328,21 @@ bool URemoteReducers::InvokeDeletePkU64(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeDeletePkU64WithArgs(const FReducerEventContext& Context, const FDeletePkU64Args& Args) +{ + if (!OnDeletePkU64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkU64")); + } + return false; + } + + OnDeletePkU64.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeletePkU8(const uint8 N) { if (!Conn) @@ -3003,6 +3372,21 @@ bool URemoteReducers::InvokeDeletePkU8(const FReducerEventContext& Context, cons return true; } +bool URemoteReducers::InvokeDeletePkU8WithArgs(const FReducerEventContext& Context, const FDeletePkU8Args& Args) +{ + if (!OnDeletePkU8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkU8")); + } + return false; + } + + OnDeletePkU8.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeletePkUuid(const FSpacetimeDBUuid& U) { if (!Conn) @@ -3032,6 +3416,21 @@ bool URemoteReducers::InvokeDeletePkUuid(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeDeletePkUuidWithArgs(const FReducerEventContext& Context, const FDeletePkUuidArgs& Args) +{ + if (!OnDeletePkUuid.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeletePkUuid")); + } + return false; + } + + OnDeletePkUuid.Broadcast(Context, Args.U); + return true; +} + void URemoteReducers::DeleteUniqueBool(const bool B) { if (!Conn) @@ -3061,6 +3460,21 @@ bool URemoteReducers::InvokeDeleteUniqueBool(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeDeleteUniqueBoolWithArgs(const FReducerEventContext& Context, const FDeleteUniqueBoolArgs& Args) +{ + if (!OnDeleteUniqueBool.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueBool")); + } + return false; + } + + OnDeleteUniqueBool.Broadcast(Context, Args.B); + return true; +} + void URemoteReducers::DeleteUniqueConnectionId(const FSpacetimeDBConnectionId& A) { if (!Conn) @@ -3090,6 +3504,21 @@ bool URemoteReducers::InvokeDeleteUniqueConnectionId(const FReducerEventContext& return true; } +bool URemoteReducers::InvokeDeleteUniqueConnectionIdWithArgs(const FReducerEventContext& Context, const FDeleteUniqueConnectionIdArgs& Args) +{ + if (!OnDeleteUniqueConnectionId.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueConnectionId")); + } + return false; + } + + OnDeleteUniqueConnectionId.Broadcast(Context, Args.A); + return true; +} + void URemoteReducers::DeleteUniqueI128(const FSpacetimeDBInt128& N) { if (!Conn) @@ -3119,6 +3548,21 @@ bool URemoteReducers::InvokeDeleteUniqueI128(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeDeleteUniqueI128WithArgs(const FReducerEventContext& Context, const FDeleteUniqueI128Args& Args) +{ + if (!OnDeleteUniqueI128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueI128")); + } + return false; + } + + OnDeleteUniqueI128.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeleteUniqueI16(const int16 N) { if (!Conn) @@ -3148,6 +3592,21 @@ bool URemoteReducers::InvokeDeleteUniqueI16(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeDeleteUniqueI16WithArgs(const FReducerEventContext& Context, const FDeleteUniqueI16Args& Args) +{ + if (!OnDeleteUniqueI16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueI16")); + } + return false; + } + + OnDeleteUniqueI16.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeleteUniqueI256(const FSpacetimeDBInt256& N) { if (!Conn) @@ -3177,6 +3636,21 @@ bool URemoteReducers::InvokeDeleteUniqueI256(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeDeleteUniqueI256WithArgs(const FReducerEventContext& Context, const FDeleteUniqueI256Args& Args) +{ + if (!OnDeleteUniqueI256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueI256")); + } + return false; + } + + OnDeleteUniqueI256.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeleteUniqueI32(const int32 N) { if (!Conn) @@ -3206,6 +3680,21 @@ bool URemoteReducers::InvokeDeleteUniqueI32(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeDeleteUniqueI32WithArgs(const FReducerEventContext& Context, const FDeleteUniqueI32Args& Args) +{ + if (!OnDeleteUniqueI32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueI32")); + } + return false; + } + + OnDeleteUniqueI32.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeleteUniqueI64(const int64 N) { if (!Conn) @@ -3235,6 +3724,21 @@ bool URemoteReducers::InvokeDeleteUniqueI64(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeDeleteUniqueI64WithArgs(const FReducerEventContext& Context, const FDeleteUniqueI64Args& Args) +{ + if (!OnDeleteUniqueI64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueI64")); + } + return false; + } + + OnDeleteUniqueI64.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeleteUniqueI8(const int8 N) { if (!Conn) @@ -3264,6 +3768,21 @@ bool URemoteReducers::InvokeDeleteUniqueI8(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeDeleteUniqueI8WithArgs(const FReducerEventContext& Context, const FDeleteUniqueI8Args& Args) +{ + if (!OnDeleteUniqueI8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueI8")); + } + return false; + } + + OnDeleteUniqueI8.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeleteUniqueIdentity(const FSpacetimeDBIdentity& I) { if (!Conn) @@ -3293,6 +3812,21 @@ bool URemoteReducers::InvokeDeleteUniqueIdentity(const FReducerEventContext& Con return true; } +bool URemoteReducers::InvokeDeleteUniqueIdentityWithArgs(const FReducerEventContext& Context, const FDeleteUniqueIdentityArgs& Args) +{ + if (!OnDeleteUniqueIdentity.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueIdentity")); + } + return false; + } + + OnDeleteUniqueIdentity.Broadcast(Context, Args.I); + return true; +} + void URemoteReducers::DeleteUniqueString(const FString& S) { if (!Conn) @@ -3322,6 +3856,21 @@ bool URemoteReducers::InvokeDeleteUniqueString(const FReducerEventContext& Conte return true; } +bool URemoteReducers::InvokeDeleteUniqueStringWithArgs(const FReducerEventContext& Context, const FDeleteUniqueStringArgs& Args) +{ + if (!OnDeleteUniqueString.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueString")); + } + return false; + } + + OnDeleteUniqueString.Broadcast(Context, Args.S); + return true; +} + void URemoteReducers::DeleteUniqueU128(const FSpacetimeDBUInt128& N) { if (!Conn) @@ -3351,6 +3900,21 @@ bool URemoteReducers::InvokeDeleteUniqueU128(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeDeleteUniqueU128WithArgs(const FReducerEventContext& Context, const FDeleteUniqueU128Args& Args) +{ + if (!OnDeleteUniqueU128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueU128")); + } + return false; + } + + OnDeleteUniqueU128.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeleteUniqueU16(const uint16 N) { if (!Conn) @@ -3380,6 +3944,21 @@ bool URemoteReducers::InvokeDeleteUniqueU16(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeDeleteUniqueU16WithArgs(const FReducerEventContext& Context, const FDeleteUniqueU16Args& Args) +{ + if (!OnDeleteUniqueU16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueU16")); + } + return false; + } + + OnDeleteUniqueU16.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeleteUniqueU256(const FSpacetimeDBUInt256& N) { if (!Conn) @@ -3409,6 +3988,21 @@ bool URemoteReducers::InvokeDeleteUniqueU256(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeDeleteUniqueU256WithArgs(const FReducerEventContext& Context, const FDeleteUniqueU256Args& Args) +{ + if (!OnDeleteUniqueU256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueU256")); + } + return false; + } + + OnDeleteUniqueU256.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeleteUniqueU32(const uint32 N) { if (!Conn) @@ -3438,6 +4032,21 @@ bool URemoteReducers::InvokeDeleteUniqueU32(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeDeleteUniqueU32WithArgs(const FReducerEventContext& Context, const FDeleteUniqueU32Args& Args) +{ + if (!OnDeleteUniqueU32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueU32")); + } + return false; + } + + OnDeleteUniqueU32.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeleteUniqueU64(const uint64 N) { if (!Conn) @@ -3467,6 +4076,21 @@ bool URemoteReducers::InvokeDeleteUniqueU64(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeDeleteUniqueU64WithArgs(const FReducerEventContext& Context, const FDeleteUniqueU64Args& Args) +{ + if (!OnDeleteUniqueU64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueU64")); + } + return false; + } + + OnDeleteUniqueU64.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::DeleteUniqueU8(const uint8 N) { if (!Conn) @@ -3496,13 +4120,28 @@ bool URemoteReducers::InvokeDeleteUniqueU8(const FReducerEventContext& Context, return true; } -void URemoteReducers::DeleteUniqueUuid(const FSpacetimeDBUuid& U) +bool URemoteReducers::InvokeDeleteUniqueU8WithArgs(const FReducerEventContext& Context, const FDeleteUniqueU8Args& Args) { - if (!Conn) + if (!OnDeleteUniqueU8.IsBound()) { - UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); - return; - } + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueU8")); + } + return false; + } + + OnDeleteUniqueU8.Broadcast(Context, Args.N); + return true; +} + +void URemoteReducers::DeleteUniqueUuid(const FSpacetimeDBUuid& U) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } Conn->CallReducerTyped(TEXT("delete_unique_uuid"), FDeleteUniqueUuidArgs(U), SetCallReducerFlags); } @@ -3525,6 +4164,21 @@ bool URemoteReducers::InvokeDeleteUniqueUuid(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeDeleteUniqueUuidWithArgs(const FReducerEventContext& Context, const FDeleteUniqueUuidArgs& Args) +{ + if (!OnDeleteUniqueUuid.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for DeleteUniqueUuid")); + } + return false; + } + + OnDeleteUniqueUuid.Broadcast(Context, Args.U); + return true; +} + void URemoteReducers::InsertCallTimestamp() { if (!Conn) @@ -3554,6 +4208,21 @@ bool URemoteReducers::InvokeInsertCallTimestamp(const FReducerEventContext& Cont return true; } +bool URemoteReducers::InvokeInsertCallTimestampWithArgs(const FReducerEventContext& Context, const FInsertCallTimestampArgs& Args) +{ + if (!OnInsertCallTimestamp.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertCallTimestamp")); + } + return false; + } + + OnInsertCallTimestamp.Broadcast(Context); + return true; +} + void URemoteReducers::InsertCallUuidV4() { if (!Conn) @@ -3583,6 +4252,21 @@ bool URemoteReducers::InvokeInsertCallUuidV4(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeInsertCallUuidV4WithArgs(const FReducerEventContext& Context, const FInsertCallUuidV4Args& Args) +{ + if (!OnInsertCallUuidV4.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertCallUuidV4")); + } + return false; + } + + OnInsertCallUuidV4.Broadcast(Context); + return true; +} + void URemoteReducers::InsertCallUuidV7() { if (!Conn) @@ -3612,6 +4296,21 @@ bool URemoteReducers::InvokeInsertCallUuidV7(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeInsertCallUuidV7WithArgs(const FReducerEventContext& Context, const FInsertCallUuidV7Args& Args) +{ + if (!OnInsertCallUuidV7.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertCallUuidV7")); + } + return false; + } + + OnInsertCallUuidV7.Broadcast(Context); + return true; +} + void URemoteReducers::InsertCallerOneConnectionId() { if (!Conn) @@ -3641,6 +4340,21 @@ bool URemoteReducers::InvokeInsertCallerOneConnectionId(const FReducerEventConte return true; } +bool URemoteReducers::InvokeInsertCallerOneConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertCallerOneConnectionIdArgs& Args) +{ + if (!OnInsertCallerOneConnectionId.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertCallerOneConnectionId")); + } + return false; + } + + OnInsertCallerOneConnectionId.Broadcast(Context); + return true; +} + void URemoteReducers::InsertCallerOneIdentity() { if (!Conn) @@ -3670,6 +4384,21 @@ bool URemoteReducers::InvokeInsertCallerOneIdentity(const FReducerEventContext& return true; } +bool URemoteReducers::InvokeInsertCallerOneIdentityWithArgs(const FReducerEventContext& Context, const FInsertCallerOneIdentityArgs& Args) +{ + if (!OnInsertCallerOneIdentity.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertCallerOneIdentity")); + } + return false; + } + + OnInsertCallerOneIdentity.Broadcast(Context); + return true; +} + void URemoteReducers::InsertCallerPkConnectionId(const int32 Data) { if (!Conn) @@ -3699,6 +4428,21 @@ bool URemoteReducers::InvokeInsertCallerPkConnectionId(const FReducerEventContex return true; } +bool URemoteReducers::InvokeInsertCallerPkConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertCallerPkConnectionIdArgs& Args) +{ + if (!OnInsertCallerPkConnectionId.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertCallerPkConnectionId")); + } + return false; + } + + OnInsertCallerPkConnectionId.Broadcast(Context, Args.Data); + return true; +} + void URemoteReducers::InsertCallerPkIdentity(const int32 Data) { if (!Conn) @@ -3728,6 +4472,21 @@ bool URemoteReducers::InvokeInsertCallerPkIdentity(const FReducerEventContext& C return true; } +bool URemoteReducers::InvokeInsertCallerPkIdentityWithArgs(const FReducerEventContext& Context, const FInsertCallerPkIdentityArgs& Args) +{ + if (!OnInsertCallerPkIdentity.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertCallerPkIdentity")); + } + return false; + } + + OnInsertCallerPkIdentity.Broadcast(Context, Args.Data); + return true; +} + void URemoteReducers::InsertCallerUniqueConnectionId(const int32 Data) { if (!Conn) @@ -3757,6 +4516,21 @@ bool URemoteReducers::InvokeInsertCallerUniqueConnectionId(const FReducerEventCo return true; } +bool URemoteReducers::InvokeInsertCallerUniqueConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertCallerUniqueConnectionIdArgs& Args) +{ + if (!OnInsertCallerUniqueConnectionId.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertCallerUniqueConnectionId")); + } + return false; + } + + OnInsertCallerUniqueConnectionId.Broadcast(Context, Args.Data); + return true; +} + void URemoteReducers::InsertCallerUniqueIdentity(const int32 Data) { if (!Conn) @@ -3786,6 +4560,21 @@ bool URemoteReducers::InvokeInsertCallerUniqueIdentity(const FReducerEventContex return true; } +bool URemoteReducers::InvokeInsertCallerUniqueIdentityWithArgs(const FReducerEventContext& Context, const FInsertCallerUniqueIdentityArgs& Args) +{ + if (!OnInsertCallerUniqueIdentity.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertCallerUniqueIdentity")); + } + return false; + } + + OnInsertCallerUniqueIdentity.Broadcast(Context, Args.Data); + return true; +} + void URemoteReducers::InsertCallerVecConnectionId() { if (!Conn) @@ -3815,6 +4604,21 @@ bool URemoteReducers::InvokeInsertCallerVecConnectionId(const FReducerEventConte return true; } +bool URemoteReducers::InvokeInsertCallerVecConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertCallerVecConnectionIdArgs& Args) +{ + if (!OnInsertCallerVecConnectionId.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertCallerVecConnectionId")); + } + return false; + } + + OnInsertCallerVecConnectionId.Broadcast(Context); + return true; +} + void URemoteReducers::InsertCallerVecIdentity() { if (!Conn) @@ -3844,6 +4648,21 @@ bool URemoteReducers::InvokeInsertCallerVecIdentity(const FReducerEventContext& return true; } +bool URemoteReducers::InvokeInsertCallerVecIdentityWithArgs(const FReducerEventContext& Context, const FInsertCallerVecIdentityArgs& Args) +{ + if (!OnInsertCallerVecIdentity.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertCallerVecIdentity")); + } + return false; + } + + OnInsertCallerVecIdentity.Broadcast(Context); + return true; +} + void URemoteReducers::InsertIntoBtreeU32(const TArray& Rows) { if (!Conn) @@ -3873,6 +4692,21 @@ bool URemoteReducers::InvokeInsertIntoBtreeU32(const FReducerEventContext& Conte return true; } +bool URemoteReducers::InvokeInsertIntoBtreeU32WithArgs(const FReducerEventContext& Context, const FInsertIntoBtreeU32Args& Args) +{ + if (!OnInsertIntoBtreeU32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertIntoBtreeU32")); + } + return false; + } + + OnInsertIntoBtreeU32.Broadcast(Context, Args.Rows); + return true; +} + void URemoteReducers::InsertIntoIndexedSimpleEnum(const ESimpleEnumType& N) { if (!Conn) @@ -3902,6 +4736,21 @@ bool URemoteReducers::InvokeInsertIntoIndexedSimpleEnum(const FReducerEventConte return true; } +bool URemoteReducers::InvokeInsertIntoIndexedSimpleEnumWithArgs(const FReducerEventContext& Context, const FInsertIntoIndexedSimpleEnumArgs& Args) +{ + if (!OnInsertIntoIndexedSimpleEnum.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertIntoIndexedSimpleEnum")); + } + return false; + } + + OnInsertIntoIndexedSimpleEnum.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertIntoPkBtreeU32(const TArray& PkU32, const TArray& BtU32) { if (!Conn) @@ -3931,6 +4780,21 @@ bool URemoteReducers::InvokeInsertIntoPkBtreeU32(const FReducerEventContext& Con return true; } +bool URemoteReducers::InvokeInsertIntoPkBtreeU32WithArgs(const FReducerEventContext& Context, const FInsertIntoPkBtreeU32Args& Args) +{ + if (!OnInsertIntoPkBtreeU32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertIntoPkBtreeU32")); + } + return false; + } + + OnInsertIntoPkBtreeU32.Broadcast(Context, Args.PkU32, Args.BtU32); + return true; +} + void URemoteReducers::InsertLargeTable(const uint8 A, const uint16 B, const uint32 C, const uint64 D, const FSpacetimeDBUInt128& E, const FSpacetimeDBUInt256& F, const int8 G, const int16 H, const int32 I, const int64 J, const FSpacetimeDBInt128& K, const FSpacetimeDBInt256& L, const bool M, const float N, const double O, const FString& P, const ESimpleEnumType& Q, const FEnumWithPayloadType& R, const FUnitStructType& S, const FByteStructType& T, const FEveryPrimitiveStructType& U, const FEveryVecStructType& V) { if (!Conn) @@ -3983,6 +4847,21 @@ bool URemoteReducers::InvokeInsertLargeTable(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeInsertLargeTableWithArgs(const FReducerEventContext& Context, const FInsertLargeTableArgs& Args) +{ + if (!OnInsertLargeTable.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertLargeTable")); + } + return false; + } + + OnInsertLargeTable.Broadcast(Context, Args); + return true; +} + void URemoteReducers::InsertOneBool(const bool B) { if (!Conn) @@ -4012,6 +4891,21 @@ bool URemoteReducers::InvokeInsertOneBool(const FReducerEventContext& Context, c return true; } +bool URemoteReducers::InvokeInsertOneBoolWithArgs(const FReducerEventContext& Context, const FInsertOneBoolArgs& Args) +{ + if (!OnInsertOneBool.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneBool")); + } + return false; + } + + OnInsertOneBool.Broadcast(Context, Args.B); + return true; +} + void URemoteReducers::InsertOneByteStruct(const FByteStructType& S) { if (!Conn) @@ -4041,15 +4935,30 @@ bool URemoteReducers::InvokeInsertOneByteStruct(const FReducerEventContext& Cont return true; } -void URemoteReducers::InsertOneConnectionId(const FSpacetimeDBConnectionId& A) +bool URemoteReducers::InvokeInsertOneByteStructWithArgs(const FReducerEventContext& Context, const FInsertOneByteStructArgs& Args) { - if (!Conn) + if (!OnInsertOneByteStruct.IsBound()) { - UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); - return; + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneByteStruct")); + } + return false; } - Conn->CallReducerTyped(TEXT("insert_one_connection_id"), FInsertOneConnectionIdArgs(A), SetCallReducerFlags); + OnInsertOneByteStruct.Broadcast(Context, Args.S); + return true; +} + +void URemoteReducers::InsertOneConnectionId(const FSpacetimeDBConnectionId& A) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } + + Conn->CallReducerTyped(TEXT("insert_one_connection_id"), FInsertOneConnectionIdArgs(A), SetCallReducerFlags); } bool URemoteReducers::InvokeInsertOneConnectionId(const FReducerEventContext& Context, const UInsertOneConnectionIdReducer* Args) @@ -4070,6 +4979,21 @@ bool URemoteReducers::InvokeInsertOneConnectionId(const FReducerEventContext& Co return true; } +bool URemoteReducers::InvokeInsertOneConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertOneConnectionIdArgs& Args) +{ + if (!OnInsertOneConnectionId.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneConnectionId")); + } + return false; + } + + OnInsertOneConnectionId.Broadcast(Context, Args.A); + return true; +} + void URemoteReducers::InsertOneEnumWithPayload(const FEnumWithPayloadType& E) { if (!Conn) @@ -4099,6 +5023,21 @@ bool URemoteReducers::InvokeInsertOneEnumWithPayload(const FReducerEventContext& return true; } +bool URemoteReducers::InvokeInsertOneEnumWithPayloadWithArgs(const FReducerEventContext& Context, const FInsertOneEnumWithPayloadArgs& Args) +{ + if (!OnInsertOneEnumWithPayload.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneEnumWithPayload")); + } + return false; + } + + OnInsertOneEnumWithPayload.Broadcast(Context, Args.E); + return true; +} + void URemoteReducers::InsertOneEveryPrimitiveStruct(const FEveryPrimitiveStructType& S) { if (!Conn) @@ -4128,6 +5067,21 @@ bool URemoteReducers::InvokeInsertOneEveryPrimitiveStruct(const FReducerEventCon return true; } +bool URemoteReducers::InvokeInsertOneEveryPrimitiveStructWithArgs(const FReducerEventContext& Context, const FInsertOneEveryPrimitiveStructArgs& Args) +{ + if (!OnInsertOneEveryPrimitiveStruct.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneEveryPrimitiveStruct")); + } + return false; + } + + OnInsertOneEveryPrimitiveStruct.Broadcast(Context, Args.S); + return true; +} + void URemoteReducers::InsertOneEveryVecStruct(const FEveryVecStructType& S) { if (!Conn) @@ -4157,6 +5111,21 @@ bool URemoteReducers::InvokeInsertOneEveryVecStruct(const FReducerEventContext& return true; } +bool URemoteReducers::InvokeInsertOneEveryVecStructWithArgs(const FReducerEventContext& Context, const FInsertOneEveryVecStructArgs& Args) +{ + if (!OnInsertOneEveryVecStruct.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneEveryVecStruct")); + } + return false; + } + + OnInsertOneEveryVecStruct.Broadcast(Context, Args.S); + return true; +} + void URemoteReducers::InsertOneF32(const float F) { if (!Conn) @@ -4186,6 +5155,21 @@ bool URemoteReducers::InvokeInsertOneF32(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertOneF32WithArgs(const FReducerEventContext& Context, const FInsertOneF32Args& Args) +{ + if (!OnInsertOneF32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneF32")); + } + return false; + } + + OnInsertOneF32.Broadcast(Context, Args.F); + return true; +} + void URemoteReducers::InsertOneF64(const double F) { if (!Conn) @@ -4215,6 +5199,21 @@ bool URemoteReducers::InvokeInsertOneF64(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertOneF64WithArgs(const FReducerEventContext& Context, const FInsertOneF64Args& Args) +{ + if (!OnInsertOneF64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneF64")); + } + return false; + } + + OnInsertOneF64.Broadcast(Context, Args.F); + return true; +} + void URemoteReducers::InsertOneI128(const FSpacetimeDBInt128& N) { if (!Conn) @@ -4244,6 +5243,21 @@ bool URemoteReducers::InvokeInsertOneI128(const FReducerEventContext& Context, c return true; } +bool URemoteReducers::InvokeInsertOneI128WithArgs(const FReducerEventContext& Context, const FInsertOneI128Args& Args) +{ + if (!OnInsertOneI128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneI128")); + } + return false; + } + + OnInsertOneI128.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertOneI16(const int16 N) { if (!Conn) @@ -4273,6 +5287,21 @@ bool URemoteReducers::InvokeInsertOneI16(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertOneI16WithArgs(const FReducerEventContext& Context, const FInsertOneI16Args& Args) +{ + if (!OnInsertOneI16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneI16")); + } + return false; + } + + OnInsertOneI16.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertOneI256(const FSpacetimeDBInt256& N) { if (!Conn) @@ -4302,6 +5331,21 @@ bool URemoteReducers::InvokeInsertOneI256(const FReducerEventContext& Context, c return true; } +bool URemoteReducers::InvokeInsertOneI256WithArgs(const FReducerEventContext& Context, const FInsertOneI256Args& Args) +{ + if (!OnInsertOneI256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneI256")); + } + return false; + } + + OnInsertOneI256.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertOneI32(const int32 N) { if (!Conn) @@ -4331,6 +5375,21 @@ bool URemoteReducers::InvokeInsertOneI32(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertOneI32WithArgs(const FReducerEventContext& Context, const FInsertOneI32Args& Args) +{ + if (!OnInsertOneI32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneI32")); + } + return false; + } + + OnInsertOneI32.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertOneI64(const int64 N) { if (!Conn) @@ -4360,6 +5419,21 @@ bool URemoteReducers::InvokeInsertOneI64(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertOneI64WithArgs(const FReducerEventContext& Context, const FInsertOneI64Args& Args) +{ + if (!OnInsertOneI64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneI64")); + } + return false; + } + + OnInsertOneI64.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertOneI8(const int8 N) { if (!Conn) @@ -4389,6 +5463,21 @@ bool URemoteReducers::InvokeInsertOneI8(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeInsertOneI8WithArgs(const FReducerEventContext& Context, const FInsertOneI8Args& Args) +{ + if (!OnInsertOneI8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneI8")); + } + return false; + } + + OnInsertOneI8.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertOneIdentity(const FSpacetimeDBIdentity& I) { if (!Conn) @@ -4418,6 +5507,21 @@ bool URemoteReducers::InvokeInsertOneIdentity(const FReducerEventContext& Contex return true; } +bool URemoteReducers::InvokeInsertOneIdentityWithArgs(const FReducerEventContext& Context, const FInsertOneIdentityArgs& Args) +{ + if (!OnInsertOneIdentity.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneIdentity")); + } + return false; + } + + OnInsertOneIdentity.Broadcast(Context, Args.I); + return true; +} + void URemoteReducers::InsertOneSimpleEnum(const ESimpleEnumType& E) { if (!Conn) @@ -4447,6 +5551,21 @@ bool URemoteReducers::InvokeInsertOneSimpleEnum(const FReducerEventContext& Cont return true; } +bool URemoteReducers::InvokeInsertOneSimpleEnumWithArgs(const FReducerEventContext& Context, const FInsertOneSimpleEnumArgs& Args) +{ + if (!OnInsertOneSimpleEnum.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneSimpleEnum")); + } + return false; + } + + OnInsertOneSimpleEnum.Broadcast(Context, Args.E); + return true; +} + void URemoteReducers::InsertOneString(const FString& S) { if (!Conn) @@ -4476,6 +5595,21 @@ bool URemoteReducers::InvokeInsertOneString(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeInsertOneStringWithArgs(const FReducerEventContext& Context, const FInsertOneStringArgs& Args) +{ + if (!OnInsertOneString.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneString")); + } + return false; + } + + OnInsertOneString.Broadcast(Context, Args.S); + return true; +} + void URemoteReducers::InsertOneTimestamp(const FSpacetimeDBTimestamp& T) { if (!Conn) @@ -4505,6 +5639,21 @@ bool URemoteReducers::InvokeInsertOneTimestamp(const FReducerEventContext& Conte return true; } +bool URemoteReducers::InvokeInsertOneTimestampWithArgs(const FReducerEventContext& Context, const FInsertOneTimestampArgs& Args) +{ + if (!OnInsertOneTimestamp.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneTimestamp")); + } + return false; + } + + OnInsertOneTimestamp.Broadcast(Context, Args.T); + return true; +} + void URemoteReducers::InsertOneU128(const FSpacetimeDBUInt128& N) { if (!Conn) @@ -4534,6 +5683,21 @@ bool URemoteReducers::InvokeInsertOneU128(const FReducerEventContext& Context, c return true; } +bool URemoteReducers::InvokeInsertOneU128WithArgs(const FReducerEventContext& Context, const FInsertOneU128Args& Args) +{ + if (!OnInsertOneU128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneU128")); + } + return false; + } + + OnInsertOneU128.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertOneU16(const uint16 N) { if (!Conn) @@ -4563,6 +5727,21 @@ bool URemoteReducers::InvokeInsertOneU16(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertOneU16WithArgs(const FReducerEventContext& Context, const FInsertOneU16Args& Args) +{ + if (!OnInsertOneU16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneU16")); + } + return false; + } + + OnInsertOneU16.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertOneU256(const FSpacetimeDBUInt256& N) { if (!Conn) @@ -4592,12 +5771,27 @@ bool URemoteReducers::InvokeInsertOneU256(const FReducerEventContext& Context, c return true; } -void URemoteReducers::InsertOneU32(const uint32 N) +bool URemoteReducers::InvokeInsertOneU256WithArgs(const FReducerEventContext& Context, const FInsertOneU256Args& Args) { - if (!Conn) + if (!OnInsertOneU256.IsBound()) { - UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); - return; + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneU256")); + } + return false; + } + + OnInsertOneU256.Broadcast(Context, Args.N); + return true; +} + +void URemoteReducers::InsertOneU32(const uint32 N) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; } Conn->CallReducerTyped(TEXT("insert_one_u32"), FInsertOneU32Args(N), SetCallReducerFlags); @@ -4621,6 +5815,21 @@ bool URemoteReducers::InvokeInsertOneU32(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertOneU32WithArgs(const FReducerEventContext& Context, const FInsertOneU32Args& Args) +{ + if (!OnInsertOneU32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneU32")); + } + return false; + } + + OnInsertOneU32.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertOneU64(const uint64 N) { if (!Conn) @@ -4650,6 +5859,21 @@ bool URemoteReducers::InvokeInsertOneU64(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertOneU64WithArgs(const FReducerEventContext& Context, const FInsertOneU64Args& Args) +{ + if (!OnInsertOneU64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneU64")); + } + return false; + } + + OnInsertOneU64.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertOneU8(const uint8 N) { if (!Conn) @@ -4679,6 +5903,21 @@ bool URemoteReducers::InvokeInsertOneU8(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeInsertOneU8WithArgs(const FReducerEventContext& Context, const FInsertOneU8Args& Args) +{ + if (!OnInsertOneU8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneU8")); + } + return false; + } + + OnInsertOneU8.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertOneUnitStruct(const FUnitStructType& S) { if (!Conn) @@ -4708,6 +5947,21 @@ bool URemoteReducers::InvokeInsertOneUnitStruct(const FReducerEventContext& Cont return true; } +bool URemoteReducers::InvokeInsertOneUnitStructWithArgs(const FReducerEventContext& Context, const FInsertOneUnitStructArgs& Args) +{ + if (!OnInsertOneUnitStruct.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneUnitStruct")); + } + return false; + } + + OnInsertOneUnitStruct.Broadcast(Context, Args.S); + return true; +} + void URemoteReducers::InsertOneUuid(const FSpacetimeDBUuid& U) { if (!Conn) @@ -4737,6 +5991,21 @@ bool URemoteReducers::InvokeInsertOneUuid(const FReducerEventContext& Context, c return true; } +bool URemoteReducers::InvokeInsertOneUuidWithArgs(const FReducerEventContext& Context, const FInsertOneUuidArgs& Args) +{ + if (!OnInsertOneUuid.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOneUuid")); + } + return false; + } + + OnInsertOneUuid.Broadcast(Context, Args.U); + return true; +} + void URemoteReducers::InsertOptionEveryPrimitiveStruct(const FTestClientOptionalEveryPrimitiveStruct& S) { if (!Conn) @@ -4766,6 +6035,21 @@ bool URemoteReducers::InvokeInsertOptionEveryPrimitiveStruct(const FReducerEvent return true; } +bool URemoteReducers::InvokeInsertOptionEveryPrimitiveStructWithArgs(const FReducerEventContext& Context, const FInsertOptionEveryPrimitiveStructArgs& Args) +{ + if (!OnInsertOptionEveryPrimitiveStruct.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOptionEveryPrimitiveStruct")); + } + return false; + } + + OnInsertOptionEveryPrimitiveStruct.Broadcast(Context, Args.S); + return true; +} + void URemoteReducers::InsertOptionI32(const FTestClientOptionalInt32 N) { if (!Conn) @@ -4795,6 +6079,21 @@ bool URemoteReducers::InvokeInsertOptionI32(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeInsertOptionI32WithArgs(const FReducerEventContext& Context, const FInsertOptionI32Args& Args) +{ + if (!OnInsertOptionI32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOptionI32")); + } + return false; + } + + OnInsertOptionI32.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertOptionIdentity(const FTestClientOptionalIdentity& I) { if (!Conn) @@ -4824,6 +6123,21 @@ bool URemoteReducers::InvokeInsertOptionIdentity(const FReducerEventContext& Con return true; } +bool URemoteReducers::InvokeInsertOptionIdentityWithArgs(const FReducerEventContext& Context, const FInsertOptionIdentityArgs& Args) +{ + if (!OnInsertOptionIdentity.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOptionIdentity")); + } + return false; + } + + OnInsertOptionIdentity.Broadcast(Context, Args.I); + return true; +} + void URemoteReducers::InsertOptionSimpleEnum(const FTestClientOptionalSimpleEnum& E) { if (!Conn) @@ -4853,6 +6167,21 @@ bool URemoteReducers::InvokeInsertOptionSimpleEnum(const FReducerEventContext& C return true; } +bool URemoteReducers::InvokeInsertOptionSimpleEnumWithArgs(const FReducerEventContext& Context, const FInsertOptionSimpleEnumArgs& Args) +{ + if (!OnInsertOptionSimpleEnum.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOptionSimpleEnum")); + } + return false; + } + + OnInsertOptionSimpleEnum.Broadcast(Context, Args.E); + return true; +} + void URemoteReducers::InsertOptionString(const FTestClientOptionalString& S) { if (!Conn) @@ -4882,6 +6211,21 @@ bool URemoteReducers::InvokeInsertOptionString(const FReducerEventContext& Conte return true; } +bool URemoteReducers::InvokeInsertOptionStringWithArgs(const FReducerEventContext& Context, const FInsertOptionStringArgs& Args) +{ + if (!OnInsertOptionString.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOptionString")); + } + return false; + } + + OnInsertOptionString.Broadcast(Context, Args.S); + return true; +} + void URemoteReducers::InsertOptionUuid(const FTestClientOptionalUuid& U) { if (!Conn) @@ -4911,6 +6255,21 @@ bool URemoteReducers::InvokeInsertOptionUuid(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeInsertOptionUuidWithArgs(const FReducerEventContext& Context, const FInsertOptionUuidArgs& Args) +{ + if (!OnInsertOptionUuid.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOptionUuid")); + } + return false; + } + + OnInsertOptionUuid.Broadcast(Context, Args.U); + return true; +} + void URemoteReducers::InsertOptionVecOptionI32(const FTestClientOptionalVecOptionalInt32& V) { if (!Conn) @@ -4940,6 +6299,21 @@ bool URemoteReducers::InvokeInsertOptionVecOptionI32(const FReducerEventContext& return true; } +bool URemoteReducers::InvokeInsertOptionVecOptionI32WithArgs(const FReducerEventContext& Context, const FInsertOptionVecOptionI32Args& Args) +{ + if (!OnInsertOptionVecOptionI32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertOptionVecOptionI32")); + } + return false; + } + + OnInsertOptionVecOptionI32.Broadcast(Context, Args.V); + return true; +} + void URemoteReducers::InsertPkBool(const bool B, const int32 Data) { if (!Conn) @@ -4969,6 +6343,21 @@ bool URemoteReducers::InvokeInsertPkBool(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertPkBoolWithArgs(const FReducerEventContext& Context, const FInsertPkBoolArgs& Args) +{ + if (!OnInsertPkBool.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkBool")); + } + return false; + } + + OnInsertPkBool.Broadcast(Context, Args.B, Args.Data); + return true; +} + void URemoteReducers::InsertPkConnectionId(const FSpacetimeDBConnectionId& A, const int32 Data) { if (!Conn) @@ -4998,6 +6387,21 @@ bool URemoteReducers::InvokeInsertPkConnectionId(const FReducerEventContext& Con return true; } +bool URemoteReducers::InvokeInsertPkConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertPkConnectionIdArgs& Args) +{ + if (!OnInsertPkConnectionId.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkConnectionId")); + } + return false; + } + + OnInsertPkConnectionId.Broadcast(Context, Args.A, Args.Data); + return true; +} + void URemoteReducers::InsertPkI128(const FSpacetimeDBInt128& N, const int32 Data) { if (!Conn) @@ -5027,6 +6431,21 @@ bool URemoteReducers::InvokeInsertPkI128(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertPkI128WithArgs(const FReducerEventContext& Context, const FInsertPkI128Args& Args) +{ + if (!OnInsertPkI128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkI128")); + } + return false; + } + + OnInsertPkI128.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertPkI16(const int16 N, const int32 Data) { if (!Conn) @@ -5056,6 +6475,21 @@ bool URemoteReducers::InvokeInsertPkI16(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeInsertPkI16WithArgs(const FReducerEventContext& Context, const FInsertPkI16Args& Args) +{ + if (!OnInsertPkI16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkI16")); + } + return false; + } + + OnInsertPkI16.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertPkI256(const FSpacetimeDBInt256& N, const int32 Data) { if (!Conn) @@ -5085,6 +6519,21 @@ bool URemoteReducers::InvokeInsertPkI256(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertPkI256WithArgs(const FReducerEventContext& Context, const FInsertPkI256Args& Args) +{ + if (!OnInsertPkI256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkI256")); + } + return false; + } + + OnInsertPkI256.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertPkI32(const int32 N, const int32 Data) { if (!Conn) @@ -5114,6 +6563,21 @@ bool URemoteReducers::InvokeInsertPkI32(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeInsertPkI32WithArgs(const FReducerEventContext& Context, const FInsertPkI32Args& Args) +{ + if (!OnInsertPkI32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkI32")); + } + return false; + } + + OnInsertPkI32.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertPkI64(const int64 N, const int32 Data) { if (!Conn) @@ -5143,15 +6607,30 @@ bool URemoteReducers::InvokeInsertPkI64(const FReducerEventContext& Context, con return true; } -void URemoteReducers::InsertPkI8(const int8 N, const int32 Data) +bool URemoteReducers::InvokeInsertPkI64WithArgs(const FReducerEventContext& Context, const FInsertPkI64Args& Args) { - if (!Conn) + if (!OnInsertPkI64.IsBound()) { - UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); - return; + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkI64")); + } + return false; } - Conn->CallReducerTyped(TEXT("insert_pk_i8"), FInsertPkI8Args(N, Data), SetCallReducerFlags); + OnInsertPkI64.Broadcast(Context, Args.N, Args.Data); + return true; +} + +void URemoteReducers::InsertPkI8(const int8 N, const int32 Data) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } + + Conn->CallReducerTyped(TEXT("insert_pk_i8"), FInsertPkI8Args(N, Data), SetCallReducerFlags); } bool URemoteReducers::InvokeInsertPkI8(const FReducerEventContext& Context, const UInsertPkI8Reducer* Args) @@ -5172,6 +6651,21 @@ bool URemoteReducers::InvokeInsertPkI8(const FReducerEventContext& Context, cons return true; } +bool URemoteReducers::InvokeInsertPkI8WithArgs(const FReducerEventContext& Context, const FInsertPkI8Args& Args) +{ + if (!OnInsertPkI8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkI8")); + } + return false; + } + + OnInsertPkI8.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertPkIdentity(const FSpacetimeDBIdentity& I, const int32 Data) { if (!Conn) @@ -5201,6 +6695,21 @@ bool URemoteReducers::InvokeInsertPkIdentity(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeInsertPkIdentityWithArgs(const FReducerEventContext& Context, const FInsertPkIdentityArgs& Args) +{ + if (!OnInsertPkIdentity.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkIdentity")); + } + return false; + } + + OnInsertPkIdentity.Broadcast(Context, Args.I, Args.Data); + return true; +} + void URemoteReducers::InsertPkSimpleEnum(const ESimpleEnumType& A, const int32 Data) { if (!Conn) @@ -5230,6 +6739,21 @@ bool URemoteReducers::InvokeInsertPkSimpleEnum(const FReducerEventContext& Conte return true; } +bool URemoteReducers::InvokeInsertPkSimpleEnumWithArgs(const FReducerEventContext& Context, const FInsertPkSimpleEnumArgs& Args) +{ + if (!OnInsertPkSimpleEnum.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkSimpleEnum")); + } + return false; + } + + OnInsertPkSimpleEnum.Broadcast(Context, Args.A, Args.Data); + return true; +} + void URemoteReducers::InsertPkString(const FString& S, const int32 Data) { if (!Conn) @@ -5259,6 +6783,21 @@ bool URemoteReducers::InvokeInsertPkString(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeInsertPkStringWithArgs(const FReducerEventContext& Context, const FInsertPkStringArgs& Args) +{ + if (!OnInsertPkString.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkString")); + } + return false; + } + + OnInsertPkString.Broadcast(Context, Args.S, Args.Data); + return true; +} + void URemoteReducers::InsertPkU128(const FSpacetimeDBUInt128& N, const int32 Data) { if (!Conn) @@ -5288,6 +6827,21 @@ bool URemoteReducers::InvokeInsertPkU128(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertPkU128WithArgs(const FReducerEventContext& Context, const FInsertPkU128Args& Args) +{ + if (!OnInsertPkU128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkU128")); + } + return false; + } + + OnInsertPkU128.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertPkU16(const uint16 N, const int32 Data) { if (!Conn) @@ -5317,6 +6871,21 @@ bool URemoteReducers::InvokeInsertPkU16(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeInsertPkU16WithArgs(const FReducerEventContext& Context, const FInsertPkU16Args& Args) +{ + if (!OnInsertPkU16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkU16")); + } + return false; + } + + OnInsertPkU16.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertPkU256(const FSpacetimeDBUInt256& N, const int32 Data) { if (!Conn) @@ -5346,6 +6915,21 @@ bool URemoteReducers::InvokeInsertPkU256(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertPkU256WithArgs(const FReducerEventContext& Context, const FInsertPkU256Args& Args) +{ + if (!OnInsertPkU256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkU256")); + } + return false; + } + + OnInsertPkU256.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertPkU32(const uint32 N, const int32 Data) { if (!Conn) @@ -5375,6 +6959,21 @@ bool URemoteReducers::InvokeInsertPkU32(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeInsertPkU32WithArgs(const FReducerEventContext& Context, const FInsertPkU32Args& Args) +{ + if (!OnInsertPkU32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkU32")); + } + return false; + } + + OnInsertPkU32.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertPkU32Two(const uint32 N, const int32 Data) { if (!Conn) @@ -5404,6 +7003,21 @@ bool URemoteReducers::InvokeInsertPkU32Two(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeInsertPkU32TwoWithArgs(const FReducerEventContext& Context, const FInsertPkU32TwoArgs& Args) +{ + if (!OnInsertPkU32Two.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkU32Two")); + } + return false; + } + + OnInsertPkU32Two.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertPkU64(const uint64 N, const int32 Data) { if (!Conn) @@ -5433,6 +7047,21 @@ bool URemoteReducers::InvokeInsertPkU64(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeInsertPkU64WithArgs(const FReducerEventContext& Context, const FInsertPkU64Args& Args) +{ + if (!OnInsertPkU64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkU64")); + } + return false; + } + + OnInsertPkU64.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertPkU8(const uint8 N, const int32 Data) { if (!Conn) @@ -5462,6 +7091,21 @@ bool URemoteReducers::InvokeInsertPkU8(const FReducerEventContext& Context, cons return true; } +bool URemoteReducers::InvokeInsertPkU8WithArgs(const FReducerEventContext& Context, const FInsertPkU8Args& Args) +{ + if (!OnInsertPkU8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkU8")); + } + return false; + } + + OnInsertPkU8.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertPkUuid(const FSpacetimeDBUuid& U, const int32 Data) { if (!Conn) @@ -5491,6 +7135,21 @@ bool URemoteReducers::InvokeInsertPkUuid(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertPkUuidWithArgs(const FReducerEventContext& Context, const FInsertPkUuidArgs& Args) +{ + if (!OnInsertPkUuid.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPkUuid")); + } + return false; + } + + OnInsertPkUuid.Broadcast(Context, Args.U, Args.Data); + return true; +} + void URemoteReducers::InsertPrimitivesAsStrings(const FEveryPrimitiveStructType& S) { if (!Conn) @@ -5520,36 +7179,22 @@ bool URemoteReducers::InvokeInsertPrimitivesAsStrings(const FReducerEventContext return true; } -void URemoteReducers::InsertTableHoldsTable(const FOneU8Type& A, const FVecU8Type& B) -{ - if (!Conn) - { - UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); - return; - } - - Conn->CallReducerTyped(TEXT("insert_table_holds_table"), FInsertTableHoldsTableArgs(A, B), SetCallReducerFlags); -} - -bool URemoteReducers::InvokeInsertTableHoldsTable(const FReducerEventContext& Context, const UInsertTableHoldsTableReducer* Args) +bool URemoteReducers::InvokeInsertPrimitivesAsStringsWithArgs(const FReducerEventContext& Context, const FInsertPrimitivesAsStringsArgs& Args) { - if (!OnInsertTableHoldsTable.IsBound()) + if (!OnInsertPrimitivesAsStrings.IsBound()) { - // Handle unhandled reducer error if (InternalOnUnhandledReducerError.IsBound()) { - // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases - // For now, just broadcast any error - InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertTableHoldsTable")); + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertPrimitivesAsStrings")); } return false; } - OnInsertTableHoldsTable.Broadcast(Context, Args->A, Args->B); + OnInsertPrimitivesAsStrings.Broadcast(Context, Args.S); return true; } -void URemoteReducers::InsertUniqueBool(const bool B, const int32 Data) +void URemoteReducers::InsertResultEveryPrimitiveStructString(const FTestClientResultEveryPrimitiveStructString& R) { if (!Conn) { @@ -5557,57 +7202,43 @@ void URemoteReducers::InsertUniqueBool(const bool B, const int32 Data) return; } - Conn->CallReducerTyped(TEXT("insert_unique_bool"), FInsertUniqueBoolArgs(B, Data), SetCallReducerFlags); + Conn->CallReducerTyped(TEXT("insert_result_every_primitive_struct_string"), FInsertResultEveryPrimitiveStructStringArgs(R), SetCallReducerFlags); } -bool URemoteReducers::InvokeInsertUniqueBool(const FReducerEventContext& Context, const UInsertUniqueBoolReducer* Args) +bool URemoteReducers::InvokeInsertResultEveryPrimitiveStructString(const FReducerEventContext& Context, const UInsertResultEveryPrimitiveStructStringReducer* Args) { - if (!OnInsertUniqueBool.IsBound()) + if (!OnInsertResultEveryPrimitiveStructString.IsBound()) { // Handle unhandled reducer error if (InternalOnUnhandledReducerError.IsBound()) { // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases // For now, just broadcast any error - InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueBool")); + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertResultEveryPrimitiveStructString")); } return false; } - OnInsertUniqueBool.Broadcast(Context, Args->B, Args->Data); + OnInsertResultEveryPrimitiveStructString.Broadcast(Context, Args->R); return true; } -void URemoteReducers::InsertUniqueConnectionId(const FSpacetimeDBConnectionId& A, const int32 Data) -{ - if (!Conn) - { - UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); - return; - } - - Conn->CallReducerTyped(TEXT("insert_unique_connection_id"), FInsertUniqueConnectionIdArgs(A, Data), SetCallReducerFlags); -} - -bool URemoteReducers::InvokeInsertUniqueConnectionId(const FReducerEventContext& Context, const UInsertUniqueConnectionIdReducer* Args) +bool URemoteReducers::InvokeInsertResultEveryPrimitiveStructStringWithArgs(const FReducerEventContext& Context, const FInsertResultEveryPrimitiveStructStringArgs& Args) { - if (!OnInsertUniqueConnectionId.IsBound()) + if (!OnInsertResultEveryPrimitiveStructString.IsBound()) { - // Handle unhandled reducer error if (InternalOnUnhandledReducerError.IsBound()) { - // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases - // For now, just broadcast any error - InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueConnectionId")); + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertResultEveryPrimitiveStructString")); } return false; } - OnInsertUniqueConnectionId.Broadcast(Context, Args->A, Args->Data); + OnInsertResultEveryPrimitiveStructString.Broadcast(Context, Args.R); return true; } -void URemoteReducers::InsertUniqueI128(const FSpacetimeDBInt128& N, const int32 Data) +void URemoteReducers::InsertResultI32String(const FTestClientResultInt32String& R) { if (!Conn) { @@ -5615,28 +7246,43 @@ void URemoteReducers::InsertUniqueI128(const FSpacetimeDBInt128& N, const int32 return; } - Conn->CallReducerTyped(TEXT("insert_unique_i128"), FInsertUniqueI128Args(N, Data), SetCallReducerFlags); + Conn->CallReducerTyped(TEXT("insert_result_i32_string"), FInsertResultI32StringArgs(R), SetCallReducerFlags); } -bool URemoteReducers::InvokeInsertUniqueI128(const FReducerEventContext& Context, const UInsertUniqueI128Reducer* Args) +bool URemoteReducers::InvokeInsertResultI32String(const FReducerEventContext& Context, const UInsertResultI32StringReducer* Args) { - if (!OnInsertUniqueI128.IsBound()) + if (!OnInsertResultI32String.IsBound()) { // Handle unhandled reducer error if (InternalOnUnhandledReducerError.IsBound()) { // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases // For now, just broadcast any error - InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueI128")); + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertResultI32String")); } return false; } - OnInsertUniqueI128.Broadcast(Context, Args->N, Args->Data); + OnInsertResultI32String.Broadcast(Context, Args->R); return true; } -void URemoteReducers::InsertUniqueI16(const int16 N, const int32 Data) +bool URemoteReducers::InvokeInsertResultI32StringWithArgs(const FReducerEventContext& Context, const FInsertResultI32StringArgs& Args) +{ + if (!OnInsertResultI32String.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertResultI32String")); + } + return false; + } + + OnInsertResultI32String.Broadcast(Context, Args.R); + return true; +} + +void URemoteReducers::InsertResultIdentityString(const FTestClientResultIdentityString& R) { if (!Conn) { @@ -5644,28 +7290,43 @@ void URemoteReducers::InsertUniqueI16(const int16 N, const int32 Data) return; } - Conn->CallReducerTyped(TEXT("insert_unique_i16"), FInsertUniqueI16Args(N, Data), SetCallReducerFlags); + Conn->CallReducerTyped(TEXT("insert_result_identity_string"), FInsertResultIdentityStringArgs(R), SetCallReducerFlags); } -bool URemoteReducers::InvokeInsertUniqueI16(const FReducerEventContext& Context, const UInsertUniqueI16Reducer* Args) +bool URemoteReducers::InvokeInsertResultIdentityString(const FReducerEventContext& Context, const UInsertResultIdentityStringReducer* Args) { - if (!OnInsertUniqueI16.IsBound()) + if (!OnInsertResultIdentityString.IsBound()) { // Handle unhandled reducer error if (InternalOnUnhandledReducerError.IsBound()) { // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases // For now, just broadcast any error - InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueI16")); + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertResultIdentityString")); } return false; } - OnInsertUniqueI16.Broadcast(Context, Args->N, Args->Data); + OnInsertResultIdentityString.Broadcast(Context, Args->R); return true; } -void URemoteReducers::InsertUniqueI256(const FSpacetimeDBInt256& N, const int32 Data) +bool URemoteReducers::InvokeInsertResultIdentityStringWithArgs(const FReducerEventContext& Context, const FInsertResultIdentityStringArgs& Args) +{ + if (!OnInsertResultIdentityString.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertResultIdentityString")); + } + return false; + } + + OnInsertResultIdentityString.Broadcast(Context, Args.R); + return true; +} + +void URemoteReducers::InsertResultSimpleEnumI32(const FTestClientResultSimpleEnumInt32& R) { if (!Conn) { @@ -5673,33 +7334,400 @@ void URemoteReducers::InsertUniqueI256(const FSpacetimeDBInt256& N, const int32 return; } - Conn->CallReducerTyped(TEXT("insert_unique_i256"), FInsertUniqueI256Args(N, Data), SetCallReducerFlags); + Conn->CallReducerTyped(TEXT("insert_result_simple_enum_i32"), FInsertResultSimpleEnumI32Args(R), SetCallReducerFlags); } -bool URemoteReducers::InvokeInsertUniqueI256(const FReducerEventContext& Context, const UInsertUniqueI256Reducer* Args) +bool URemoteReducers::InvokeInsertResultSimpleEnumI32(const FReducerEventContext& Context, const UInsertResultSimpleEnumI32Reducer* Args) { - if (!OnInsertUniqueI256.IsBound()) + if (!OnInsertResultSimpleEnumI32.IsBound()) { // Handle unhandled reducer error if (InternalOnUnhandledReducerError.IsBound()) { // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases // For now, just broadcast any error - InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueI256")); + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertResultSimpleEnumI32")); } return false; } - OnInsertUniqueI256.Broadcast(Context, Args->N, Args->Data); + OnInsertResultSimpleEnumI32.Broadcast(Context, Args->R); return true; } -void URemoteReducers::InsertUniqueI32(const int32 N, const int32 Data) +bool URemoteReducers::InvokeInsertResultSimpleEnumI32WithArgs(const FReducerEventContext& Context, const FInsertResultSimpleEnumI32Args& Args) { - if (!Conn) + if (!OnInsertResultSimpleEnumI32.IsBound()) { - UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); - return; + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertResultSimpleEnumI32")); + } + return false; + } + + OnInsertResultSimpleEnumI32.Broadcast(Context, Args.R); + return true; +} + +void URemoteReducers::InsertResultStringI32(const FTestClientResultStringInt32& R) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } + + Conn->CallReducerTyped(TEXT("insert_result_string_i32"), FInsertResultStringI32Args(R), SetCallReducerFlags); +} + +bool URemoteReducers::InvokeInsertResultStringI32(const FReducerEventContext& Context, const UInsertResultStringI32Reducer* Args) +{ + if (!OnInsertResultStringI32.IsBound()) + { + // Handle unhandled reducer error + if (InternalOnUnhandledReducerError.IsBound()) + { + // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases + // For now, just broadcast any error + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertResultStringI32")); + } + return false; + } + + OnInsertResultStringI32.Broadcast(Context, Args->R); + return true; +} + +bool URemoteReducers::InvokeInsertResultStringI32WithArgs(const FReducerEventContext& Context, const FInsertResultStringI32Args& Args) +{ + if (!OnInsertResultStringI32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertResultStringI32")); + } + return false; + } + + OnInsertResultStringI32.Broadcast(Context, Args.R); + return true; +} + +void URemoteReducers::InsertResultVecI32String(const FTestClientResultVecInt32String& R) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } + + Conn->CallReducerTyped(TEXT("insert_result_vec_i32_string"), FInsertResultVecI32StringArgs(R), SetCallReducerFlags); +} + +bool URemoteReducers::InvokeInsertResultVecI32String(const FReducerEventContext& Context, const UInsertResultVecI32StringReducer* Args) +{ + if (!OnInsertResultVecI32String.IsBound()) + { + // Handle unhandled reducer error + if (InternalOnUnhandledReducerError.IsBound()) + { + // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases + // For now, just broadcast any error + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertResultVecI32String")); + } + return false; + } + + OnInsertResultVecI32String.Broadcast(Context, Args->R); + return true; +} + +bool URemoteReducers::InvokeInsertResultVecI32StringWithArgs(const FReducerEventContext& Context, const FInsertResultVecI32StringArgs& Args) +{ + if (!OnInsertResultVecI32String.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertResultVecI32String")); + } + return false; + } + + OnInsertResultVecI32String.Broadcast(Context, Args.R); + return true; +} + +void URemoteReducers::InsertTableHoldsTable(const FOneU8Type& A, const FVecU8Type& B) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } + + Conn->CallReducerTyped(TEXT("insert_table_holds_table"), FInsertTableHoldsTableArgs(A, B), SetCallReducerFlags); +} + +bool URemoteReducers::InvokeInsertTableHoldsTable(const FReducerEventContext& Context, const UInsertTableHoldsTableReducer* Args) +{ + if (!OnInsertTableHoldsTable.IsBound()) + { + // Handle unhandled reducer error + if (InternalOnUnhandledReducerError.IsBound()) + { + // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases + // For now, just broadcast any error + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertTableHoldsTable")); + } + return false; + } + + OnInsertTableHoldsTable.Broadcast(Context, Args->A, Args->B); + return true; +} + +bool URemoteReducers::InvokeInsertTableHoldsTableWithArgs(const FReducerEventContext& Context, const FInsertTableHoldsTableArgs& Args) +{ + if (!OnInsertTableHoldsTable.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertTableHoldsTable")); + } + return false; + } + + OnInsertTableHoldsTable.Broadcast(Context, Args.A, Args.B); + return true; +} + +void URemoteReducers::InsertUniqueBool(const bool B, const int32 Data) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } + + Conn->CallReducerTyped(TEXT("insert_unique_bool"), FInsertUniqueBoolArgs(B, Data), SetCallReducerFlags); +} + +bool URemoteReducers::InvokeInsertUniqueBool(const FReducerEventContext& Context, const UInsertUniqueBoolReducer* Args) +{ + if (!OnInsertUniqueBool.IsBound()) + { + // Handle unhandled reducer error + if (InternalOnUnhandledReducerError.IsBound()) + { + // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases + // For now, just broadcast any error + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueBool")); + } + return false; + } + + OnInsertUniqueBool.Broadcast(Context, Args->B, Args->Data); + return true; +} + +bool URemoteReducers::InvokeInsertUniqueBoolWithArgs(const FReducerEventContext& Context, const FInsertUniqueBoolArgs& Args) +{ + if (!OnInsertUniqueBool.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueBool")); + } + return false; + } + + OnInsertUniqueBool.Broadcast(Context, Args.B, Args.Data); + return true; +} + +void URemoteReducers::InsertUniqueConnectionId(const FSpacetimeDBConnectionId& A, const int32 Data) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } + + Conn->CallReducerTyped(TEXT("insert_unique_connection_id"), FInsertUniqueConnectionIdArgs(A, Data), SetCallReducerFlags); +} + +bool URemoteReducers::InvokeInsertUniqueConnectionId(const FReducerEventContext& Context, const UInsertUniqueConnectionIdReducer* Args) +{ + if (!OnInsertUniqueConnectionId.IsBound()) + { + // Handle unhandled reducer error + if (InternalOnUnhandledReducerError.IsBound()) + { + // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases + // For now, just broadcast any error + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueConnectionId")); + } + return false; + } + + OnInsertUniqueConnectionId.Broadcast(Context, Args->A, Args->Data); + return true; +} + +bool URemoteReducers::InvokeInsertUniqueConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertUniqueConnectionIdArgs& Args) +{ + if (!OnInsertUniqueConnectionId.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueConnectionId")); + } + return false; + } + + OnInsertUniqueConnectionId.Broadcast(Context, Args.A, Args.Data); + return true; +} + +void URemoteReducers::InsertUniqueI128(const FSpacetimeDBInt128& N, const int32 Data) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } + + Conn->CallReducerTyped(TEXT("insert_unique_i128"), FInsertUniqueI128Args(N, Data), SetCallReducerFlags); +} + +bool URemoteReducers::InvokeInsertUniqueI128(const FReducerEventContext& Context, const UInsertUniqueI128Reducer* Args) +{ + if (!OnInsertUniqueI128.IsBound()) + { + // Handle unhandled reducer error + if (InternalOnUnhandledReducerError.IsBound()) + { + // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases + // For now, just broadcast any error + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueI128")); + } + return false; + } + + OnInsertUniqueI128.Broadcast(Context, Args->N, Args->Data); + return true; +} + +bool URemoteReducers::InvokeInsertUniqueI128WithArgs(const FReducerEventContext& Context, const FInsertUniqueI128Args& Args) +{ + if (!OnInsertUniqueI128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueI128")); + } + return false; + } + + OnInsertUniqueI128.Broadcast(Context, Args.N, Args.Data); + return true; +} + +void URemoteReducers::InsertUniqueI16(const int16 N, const int32 Data) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } + + Conn->CallReducerTyped(TEXT("insert_unique_i16"), FInsertUniqueI16Args(N, Data), SetCallReducerFlags); +} + +bool URemoteReducers::InvokeInsertUniqueI16(const FReducerEventContext& Context, const UInsertUniqueI16Reducer* Args) +{ + if (!OnInsertUniqueI16.IsBound()) + { + // Handle unhandled reducer error + if (InternalOnUnhandledReducerError.IsBound()) + { + // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases + // For now, just broadcast any error + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueI16")); + } + return false; + } + + OnInsertUniqueI16.Broadcast(Context, Args->N, Args->Data); + return true; +} + +bool URemoteReducers::InvokeInsertUniqueI16WithArgs(const FReducerEventContext& Context, const FInsertUniqueI16Args& Args) +{ + if (!OnInsertUniqueI16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueI16")); + } + return false; + } + + OnInsertUniqueI16.Broadcast(Context, Args.N, Args.Data); + return true; +} + +void URemoteReducers::InsertUniqueI256(const FSpacetimeDBInt256& N, const int32 Data) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } + + Conn->CallReducerTyped(TEXT("insert_unique_i256"), FInsertUniqueI256Args(N, Data), SetCallReducerFlags); +} + +bool URemoteReducers::InvokeInsertUniqueI256(const FReducerEventContext& Context, const UInsertUniqueI256Reducer* Args) +{ + if (!OnInsertUniqueI256.IsBound()) + { + // Handle unhandled reducer error + if (InternalOnUnhandledReducerError.IsBound()) + { + // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases + // For now, just broadcast any error + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueI256")); + } + return false; + } + + OnInsertUniqueI256.Broadcast(Context, Args->N, Args->Data); + return true; +} + +bool URemoteReducers::InvokeInsertUniqueI256WithArgs(const FReducerEventContext& Context, const FInsertUniqueI256Args& Args) +{ + if (!OnInsertUniqueI256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueI256")); + } + return false; + } + + OnInsertUniqueI256.Broadcast(Context, Args.N, Args.Data); + return true; +} + +void URemoteReducers::InsertUniqueI32(const int32 N, const int32 Data) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; } Conn->CallReducerTyped(TEXT("insert_unique_i32"), FInsertUniqueI32Args(N, Data), SetCallReducerFlags); @@ -5723,6 +7751,21 @@ bool URemoteReducers::InvokeInsertUniqueI32(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeInsertUniqueI32WithArgs(const FReducerEventContext& Context, const FInsertUniqueI32Args& Args) +{ + if (!OnInsertUniqueI32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueI32")); + } + return false; + } + + OnInsertUniqueI32.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertUniqueI64(const int64 N, const int32 Data) { if (!Conn) @@ -5752,6 +7795,21 @@ bool URemoteReducers::InvokeInsertUniqueI64(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeInsertUniqueI64WithArgs(const FReducerEventContext& Context, const FInsertUniqueI64Args& Args) +{ + if (!OnInsertUniqueI64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueI64")); + } + return false; + } + + OnInsertUniqueI64.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertUniqueI8(const int8 N, const int32 Data) { if (!Conn) @@ -5781,6 +7839,21 @@ bool URemoteReducers::InvokeInsertUniqueI8(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeInsertUniqueI8WithArgs(const FReducerEventContext& Context, const FInsertUniqueI8Args& Args) +{ + if (!OnInsertUniqueI8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueI8")); + } + return false; + } + + OnInsertUniqueI8.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertUniqueIdentity(const FSpacetimeDBIdentity& I, const int32 Data) { if (!Conn) @@ -5810,6 +7883,21 @@ bool URemoteReducers::InvokeInsertUniqueIdentity(const FReducerEventContext& Con return true; } +bool URemoteReducers::InvokeInsertUniqueIdentityWithArgs(const FReducerEventContext& Context, const FInsertUniqueIdentityArgs& Args) +{ + if (!OnInsertUniqueIdentity.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueIdentity")); + } + return false; + } + + OnInsertUniqueIdentity.Broadcast(Context, Args.I, Args.Data); + return true; +} + void URemoteReducers::InsertUniqueString(const FString& S, const int32 Data) { if (!Conn) @@ -5821,21 +7909,36 @@ void URemoteReducers::InsertUniqueString(const FString& S, const int32 Data) Conn->CallReducerTyped(TEXT("insert_unique_string"), FInsertUniqueStringArgs(S, Data), SetCallReducerFlags); } -bool URemoteReducers::InvokeInsertUniqueString(const FReducerEventContext& Context, const UInsertUniqueStringReducer* Args) +bool URemoteReducers::InvokeInsertUniqueString(const FReducerEventContext& Context, const UInsertUniqueStringReducer* Args) +{ + if (!OnInsertUniqueString.IsBound()) + { + // Handle unhandled reducer error + if (InternalOnUnhandledReducerError.IsBound()) + { + // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases + // For now, just broadcast any error + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueString")); + } + return false; + } + + OnInsertUniqueString.Broadcast(Context, Args->S, Args->Data); + return true; +} + +bool URemoteReducers::InvokeInsertUniqueStringWithArgs(const FReducerEventContext& Context, const FInsertUniqueStringArgs& Args) { if (!OnInsertUniqueString.IsBound()) { - // Handle unhandled reducer error if (InternalOnUnhandledReducerError.IsBound()) { - // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases - // For now, just broadcast any error InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueString")); } return false; } - OnInsertUniqueString.Broadcast(Context, Args->S, Args->Data); + OnInsertUniqueString.Broadcast(Context, Args.S, Args.Data); return true; } @@ -5868,6 +7971,21 @@ bool URemoteReducers::InvokeInsertUniqueU128(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeInsertUniqueU128WithArgs(const FReducerEventContext& Context, const FInsertUniqueU128Args& Args) +{ + if (!OnInsertUniqueU128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueU128")); + } + return false; + } + + OnInsertUniqueU128.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertUniqueU16(const uint16 N, const int32 Data) { if (!Conn) @@ -5897,6 +8015,21 @@ bool URemoteReducers::InvokeInsertUniqueU16(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeInsertUniqueU16WithArgs(const FReducerEventContext& Context, const FInsertUniqueU16Args& Args) +{ + if (!OnInsertUniqueU16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueU16")); + } + return false; + } + + OnInsertUniqueU16.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertUniqueU256(const FSpacetimeDBUInt256& N, const int32 Data) { if (!Conn) @@ -5926,6 +8059,21 @@ bool URemoteReducers::InvokeInsertUniqueU256(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeInsertUniqueU256WithArgs(const FReducerEventContext& Context, const FInsertUniqueU256Args& Args) +{ + if (!OnInsertUniqueU256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueU256")); + } + return false; + } + + OnInsertUniqueU256.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertUniqueU32(const uint32 N, const int32 Data) { if (!Conn) @@ -5955,6 +8103,21 @@ bool URemoteReducers::InvokeInsertUniqueU32(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeInsertUniqueU32WithArgs(const FReducerEventContext& Context, const FInsertUniqueU32Args& Args) +{ + if (!OnInsertUniqueU32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueU32")); + } + return false; + } + + OnInsertUniqueU32.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertUniqueU32UpdatePkU32(const uint32 N, const int32 DUnique, const int32 DPk) { if (!Conn) @@ -5984,6 +8147,21 @@ bool URemoteReducers::InvokeInsertUniqueU32UpdatePkU32(const FReducerEventContex return true; } +bool URemoteReducers::InvokeInsertUniqueU32UpdatePkU32WithArgs(const FReducerEventContext& Context, const FInsertUniqueU32UpdatePkU32Args& Args) +{ + if (!OnInsertUniqueU32UpdatePkU32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueU32UpdatePkU32")); + } + return false; + } + + OnInsertUniqueU32UpdatePkU32.Broadcast(Context, Args.N, Args.DUnique, Args.DPk); + return true; +} + void URemoteReducers::InsertUniqueU64(const uint64 N, const int32 Data) { if (!Conn) @@ -6013,6 +8191,21 @@ bool URemoteReducers::InvokeInsertUniqueU64(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeInsertUniqueU64WithArgs(const FReducerEventContext& Context, const FInsertUniqueU64Args& Args) +{ + if (!OnInsertUniqueU64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueU64")); + } + return false; + } + + OnInsertUniqueU64.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertUniqueU8(const uint8 N, const int32 Data) { if (!Conn) @@ -6042,6 +8235,21 @@ bool URemoteReducers::InvokeInsertUniqueU8(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeInsertUniqueU8WithArgs(const FReducerEventContext& Context, const FInsertUniqueU8Args& Args) +{ + if (!OnInsertUniqueU8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueU8")); + } + return false; + } + + OnInsertUniqueU8.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::InsertUniqueUuid(const FSpacetimeDBUuid& U, const int32 Data) { if (!Conn) @@ -6071,6 +8279,21 @@ bool URemoteReducers::InvokeInsertUniqueUuid(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeInsertUniqueUuidWithArgs(const FReducerEventContext& Context, const FInsertUniqueUuidArgs& Args) +{ + if (!OnInsertUniqueUuid.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUniqueUuid")); + } + return false; + } + + OnInsertUniqueUuid.Broadcast(Context, Args.U, Args.Data); + return true; +} + void URemoteReducers::InsertUser(const FString& Name, const FSpacetimeDBIdentity& Identity) { if (!Conn) @@ -6100,6 +8323,21 @@ bool URemoteReducers::InvokeInsertUser(const FReducerEventContext& Context, cons return true; } +bool URemoteReducers::InvokeInsertUserWithArgs(const FReducerEventContext& Context, const FInsertUserArgs& Args) +{ + if (!OnInsertUser.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertUser")); + } + return false; + } + + OnInsertUser.Broadcast(Context, Args.Name, Args.Identity); + return true; +} + void URemoteReducers::InsertVecBool(const TArray& B) { if (!Conn) @@ -6129,6 +8367,21 @@ bool URemoteReducers::InvokeInsertVecBool(const FReducerEventContext& Context, c return true; } +bool URemoteReducers::InvokeInsertVecBoolWithArgs(const FReducerEventContext& Context, const FInsertVecBoolArgs& Args) +{ + if (!OnInsertVecBool.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecBool")); + } + return false; + } + + OnInsertVecBool.Broadcast(Context, Args.B); + return true; +} + void URemoteReducers::InsertVecByteStruct(const TArray& S) { if (!Conn) @@ -6158,6 +8411,21 @@ bool URemoteReducers::InvokeInsertVecByteStruct(const FReducerEventContext& Cont return true; } +bool URemoteReducers::InvokeInsertVecByteStructWithArgs(const FReducerEventContext& Context, const FInsertVecByteStructArgs& Args) +{ + if (!OnInsertVecByteStruct.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecByteStruct")); + } + return false; + } + + OnInsertVecByteStruct.Broadcast(Context, Args.S); + return true; +} + void URemoteReducers::InsertVecConnectionId(const TArray& A) { if (!Conn) @@ -6187,6 +8455,21 @@ bool URemoteReducers::InvokeInsertVecConnectionId(const FReducerEventContext& Co return true; } +bool URemoteReducers::InvokeInsertVecConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertVecConnectionIdArgs& Args) +{ + if (!OnInsertVecConnectionId.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecConnectionId")); + } + return false; + } + + OnInsertVecConnectionId.Broadcast(Context, Args.A); + return true; +} + void URemoteReducers::InsertVecEnumWithPayload(const TArray& E) { if (!Conn) @@ -6216,6 +8499,21 @@ bool URemoteReducers::InvokeInsertVecEnumWithPayload(const FReducerEventContext& return true; } +bool URemoteReducers::InvokeInsertVecEnumWithPayloadWithArgs(const FReducerEventContext& Context, const FInsertVecEnumWithPayloadArgs& Args) +{ + if (!OnInsertVecEnumWithPayload.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecEnumWithPayload")); + } + return false; + } + + OnInsertVecEnumWithPayload.Broadcast(Context, Args.E); + return true; +} + void URemoteReducers::InsertVecEveryPrimitiveStruct(const TArray& S) { if (!Conn) @@ -6245,6 +8543,21 @@ bool URemoteReducers::InvokeInsertVecEveryPrimitiveStruct(const FReducerEventCon return true; } +bool URemoteReducers::InvokeInsertVecEveryPrimitiveStructWithArgs(const FReducerEventContext& Context, const FInsertVecEveryPrimitiveStructArgs& Args) +{ + if (!OnInsertVecEveryPrimitiveStruct.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecEveryPrimitiveStruct")); + } + return false; + } + + OnInsertVecEveryPrimitiveStruct.Broadcast(Context, Args.S); + return true; +} + void URemoteReducers::InsertVecEveryVecStruct(const TArray& S) { if (!Conn) @@ -6274,6 +8587,21 @@ bool URemoteReducers::InvokeInsertVecEveryVecStruct(const FReducerEventContext& return true; } +bool URemoteReducers::InvokeInsertVecEveryVecStructWithArgs(const FReducerEventContext& Context, const FInsertVecEveryVecStructArgs& Args) +{ + if (!OnInsertVecEveryVecStruct.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecEveryVecStruct")); + } + return false; + } + + OnInsertVecEveryVecStruct.Broadcast(Context, Args.S); + return true; +} + void URemoteReducers::InsertVecF32(const TArray& F) { if (!Conn) @@ -6303,6 +8631,21 @@ bool URemoteReducers::InvokeInsertVecF32(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertVecF32WithArgs(const FReducerEventContext& Context, const FInsertVecF32Args& Args) +{ + if (!OnInsertVecF32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecF32")); + } + return false; + } + + OnInsertVecF32.Broadcast(Context, Args.F); + return true; +} + void URemoteReducers::InsertVecF64(const TArray& F) { if (!Conn) @@ -6332,6 +8675,21 @@ bool URemoteReducers::InvokeInsertVecF64(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertVecF64WithArgs(const FReducerEventContext& Context, const FInsertVecF64Args& Args) +{ + if (!OnInsertVecF64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecF64")); + } + return false; + } + + OnInsertVecF64.Broadcast(Context, Args.F); + return true; +} + void URemoteReducers::InsertVecI128(const TArray& N) { if (!Conn) @@ -6361,6 +8719,21 @@ bool URemoteReducers::InvokeInsertVecI128(const FReducerEventContext& Context, c return true; } +bool URemoteReducers::InvokeInsertVecI128WithArgs(const FReducerEventContext& Context, const FInsertVecI128Args& Args) +{ + if (!OnInsertVecI128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecI128")); + } + return false; + } + + OnInsertVecI128.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertVecI16(const TArray& N) { if (!Conn) @@ -6376,17 +8749,32 @@ bool URemoteReducers::InvokeInsertVecI16(const FReducerEventContext& Context, co { if (!OnInsertVecI16.IsBound()) { - // Handle unhandled reducer error + // Handle unhandled reducer error + if (InternalOnUnhandledReducerError.IsBound()) + { + // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases + // For now, just broadcast any error + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecI16")); + } + return false; + } + + OnInsertVecI16.Broadcast(Context, Args->N); + return true; +} + +bool URemoteReducers::InvokeInsertVecI16WithArgs(const FReducerEventContext& Context, const FInsertVecI16Args& Args) +{ + if (!OnInsertVecI16.IsBound()) + { if (InternalOnUnhandledReducerError.IsBound()) { - // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases - // For now, just broadcast any error InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecI16")); } return false; } - OnInsertVecI16.Broadcast(Context, Args->N); + OnInsertVecI16.Broadcast(Context, Args.N); return true; } @@ -6419,6 +8807,21 @@ bool URemoteReducers::InvokeInsertVecI256(const FReducerEventContext& Context, c return true; } +bool URemoteReducers::InvokeInsertVecI256WithArgs(const FReducerEventContext& Context, const FInsertVecI256Args& Args) +{ + if (!OnInsertVecI256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecI256")); + } + return false; + } + + OnInsertVecI256.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertVecI32(const TArray& N) { if (!Conn) @@ -6448,6 +8851,21 @@ bool URemoteReducers::InvokeInsertVecI32(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertVecI32WithArgs(const FReducerEventContext& Context, const FInsertVecI32Args& Args) +{ + if (!OnInsertVecI32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecI32")); + } + return false; + } + + OnInsertVecI32.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertVecI64(const TArray& N) { if (!Conn) @@ -6477,6 +8895,21 @@ bool URemoteReducers::InvokeInsertVecI64(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertVecI64WithArgs(const FReducerEventContext& Context, const FInsertVecI64Args& Args) +{ + if (!OnInsertVecI64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecI64")); + } + return false; + } + + OnInsertVecI64.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertVecI8(const TArray& N) { if (!Conn) @@ -6506,6 +8939,21 @@ bool URemoteReducers::InvokeInsertVecI8(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeInsertVecI8WithArgs(const FReducerEventContext& Context, const FInsertVecI8Args& Args) +{ + if (!OnInsertVecI8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecI8")); + } + return false; + } + + OnInsertVecI8.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertVecIdentity(const TArray& I) { if (!Conn) @@ -6535,6 +8983,21 @@ bool URemoteReducers::InvokeInsertVecIdentity(const FReducerEventContext& Contex return true; } +bool URemoteReducers::InvokeInsertVecIdentityWithArgs(const FReducerEventContext& Context, const FInsertVecIdentityArgs& Args) +{ + if (!OnInsertVecIdentity.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecIdentity")); + } + return false; + } + + OnInsertVecIdentity.Broadcast(Context, Args.I); + return true; +} + void URemoteReducers::InsertVecSimpleEnum(const TArray& E) { if (!Conn) @@ -6564,6 +9027,21 @@ bool URemoteReducers::InvokeInsertVecSimpleEnum(const FReducerEventContext& Cont return true; } +bool URemoteReducers::InvokeInsertVecSimpleEnumWithArgs(const FReducerEventContext& Context, const FInsertVecSimpleEnumArgs& Args) +{ + if (!OnInsertVecSimpleEnum.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecSimpleEnum")); + } + return false; + } + + OnInsertVecSimpleEnum.Broadcast(Context, Args.E); + return true; +} + void URemoteReducers::InsertVecString(const TArray& S) { if (!Conn) @@ -6593,6 +9071,21 @@ bool URemoteReducers::InvokeInsertVecString(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeInsertVecStringWithArgs(const FReducerEventContext& Context, const FInsertVecStringArgs& Args) +{ + if (!OnInsertVecString.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecString")); + } + return false; + } + + OnInsertVecString.Broadcast(Context, Args.S); + return true; +} + void URemoteReducers::InsertVecTimestamp(const TArray& T) { if (!Conn) @@ -6622,6 +9115,21 @@ bool URemoteReducers::InvokeInsertVecTimestamp(const FReducerEventContext& Conte return true; } +bool URemoteReducers::InvokeInsertVecTimestampWithArgs(const FReducerEventContext& Context, const FInsertVecTimestampArgs& Args) +{ + if (!OnInsertVecTimestamp.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecTimestamp")); + } + return false; + } + + OnInsertVecTimestamp.Broadcast(Context, Args.T); + return true; +} + void URemoteReducers::InsertVecU128(const TArray& N) { if (!Conn) @@ -6651,6 +9159,21 @@ bool URemoteReducers::InvokeInsertVecU128(const FReducerEventContext& Context, c return true; } +bool URemoteReducers::InvokeInsertVecU128WithArgs(const FReducerEventContext& Context, const FInsertVecU128Args& Args) +{ + if (!OnInsertVecU128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecU128")); + } + return false; + } + + OnInsertVecU128.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertVecU16(const TArray& N) { if (!Conn) @@ -6680,6 +9203,21 @@ bool URemoteReducers::InvokeInsertVecU16(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertVecU16WithArgs(const FReducerEventContext& Context, const FInsertVecU16Args& Args) +{ + if (!OnInsertVecU16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecU16")); + } + return false; + } + + OnInsertVecU16.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertVecU256(const TArray& N) { if (!Conn) @@ -6709,6 +9247,21 @@ bool URemoteReducers::InvokeInsertVecU256(const FReducerEventContext& Context, c return true; } +bool URemoteReducers::InvokeInsertVecU256WithArgs(const FReducerEventContext& Context, const FInsertVecU256Args& Args) +{ + if (!OnInsertVecU256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecU256")); + } + return false; + } + + OnInsertVecU256.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertVecU32(const TArray& N) { if (!Conn) @@ -6738,6 +9291,21 @@ bool URemoteReducers::InvokeInsertVecU32(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertVecU32WithArgs(const FReducerEventContext& Context, const FInsertVecU32Args& Args) +{ + if (!OnInsertVecU32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecU32")); + } + return false; + } + + OnInsertVecU32.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertVecU64(const TArray& N) { if (!Conn) @@ -6767,6 +9335,21 @@ bool URemoteReducers::InvokeInsertVecU64(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeInsertVecU64WithArgs(const FReducerEventContext& Context, const FInsertVecU64Args& Args) +{ + if (!OnInsertVecU64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecU64")); + } + return false; + } + + OnInsertVecU64.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertVecU8(const TArray& N) { if (!Conn) @@ -6796,6 +9379,21 @@ bool URemoteReducers::InvokeInsertVecU8(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeInsertVecU8WithArgs(const FReducerEventContext& Context, const FInsertVecU8Args& Args) +{ + if (!OnInsertVecU8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecU8")); + } + return false; + } + + OnInsertVecU8.Broadcast(Context, Args.N); + return true; +} + void URemoteReducers::InsertVecUnitStruct(const TArray& S) { if (!Conn) @@ -6825,6 +9423,21 @@ bool URemoteReducers::InvokeInsertVecUnitStruct(const FReducerEventContext& Cont return true; } +bool URemoteReducers::InvokeInsertVecUnitStructWithArgs(const FReducerEventContext& Context, const FInsertVecUnitStructArgs& Args) +{ + if (!OnInsertVecUnitStruct.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecUnitStruct")); + } + return false; + } + + OnInsertVecUnitStruct.Broadcast(Context, Args.S); + return true; +} + void URemoteReducers::InsertVecUuid(const TArray& U) { if (!Conn) @@ -6854,6 +9467,21 @@ bool URemoteReducers::InvokeInsertVecUuid(const FReducerEventContext& Context, c return true; } +bool URemoteReducers::InvokeInsertVecUuidWithArgs(const FReducerEventContext& Context, const FInsertVecUuidArgs& Args) +{ + if (!OnInsertVecUuid.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for InsertVecUuid")); + } + return false; + } + + OnInsertVecUuid.Broadcast(Context, Args.U); + return true; +} + void URemoteReducers::NoOpSucceeds() { if (!Conn) @@ -6883,6 +9511,21 @@ bool URemoteReducers::InvokeNoOpSucceeds(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeNoOpSucceedsWithArgs(const FReducerEventContext& Context, const FNoOpSucceedsArgs& Args) +{ + if (!OnNoOpSucceeds.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for NoOpSucceeds")); + } + return false; + } + + OnNoOpSucceeds.Broadcast(Context); + return true; +} + void URemoteReducers::SendScheduledMessage(const FScheduledTableType& Arg) { if (!Conn) @@ -6912,6 +9555,21 @@ bool URemoteReducers::InvokeSendScheduledMessage(const FReducerEventContext& Con return true; } +bool URemoteReducers::InvokeSendScheduledMessageWithArgs(const FReducerEventContext& Context, const FSendScheduledMessageArgs& Args) +{ + if (!OnSendScheduledMessage.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for SendScheduledMessage")); + } + return false; + } + + OnSendScheduledMessage.Broadcast(Context, Args.Arg); + return true; +} + void URemoteReducers::SortedUuidsInsert() { if (!Conn) @@ -6923,15 +9581,30 @@ void URemoteReducers::SortedUuidsInsert() Conn->CallReducerTyped(TEXT("sorted_uuids_insert"), FSortedUuidsInsertArgs(), SetCallReducerFlags); } -bool URemoteReducers::InvokeSortedUuidsInsert(const FReducerEventContext& Context, const USortedUuidsInsertReducer* Args) +bool URemoteReducers::InvokeSortedUuidsInsert(const FReducerEventContext& Context, const USortedUuidsInsertReducer* Args) +{ + if (!OnSortedUuidsInsert.IsBound()) + { + // Handle unhandled reducer error + if (InternalOnUnhandledReducerError.IsBound()) + { + // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases + // For now, just broadcast any error + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for SortedUuidsInsert")); + } + return false; + } + + OnSortedUuidsInsert.Broadcast(Context); + return true; +} + +bool URemoteReducers::InvokeSortedUuidsInsertWithArgs(const FReducerEventContext& Context, const FSortedUuidsInsertArgs& Args) { if (!OnSortedUuidsInsert.IsBound()) { - // Handle unhandled reducer error if (InternalOnUnhandledReducerError.IsBound()) { - // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases - // For now, just broadcast any error InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for SortedUuidsInsert")); } return false; @@ -6970,6 +9643,21 @@ bool URemoteReducers::InvokeUpdateIndexedSimpleEnum(const FReducerEventContext& return true; } +bool URemoteReducers::InvokeUpdateIndexedSimpleEnumWithArgs(const FReducerEventContext& Context, const FUpdateIndexedSimpleEnumArgs& Args) +{ + if (!OnUpdateIndexedSimpleEnum.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateIndexedSimpleEnum")); + } + return false; + } + + OnUpdateIndexedSimpleEnum.Broadcast(Context, Args.A, Args.B); + return true; +} + void URemoteReducers::UpdatePkBool(const bool B, const int32 Data) { if (!Conn) @@ -6999,6 +9687,21 @@ bool URemoteReducers::InvokeUpdatePkBool(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeUpdatePkBoolWithArgs(const FReducerEventContext& Context, const FUpdatePkBoolArgs& Args) +{ + if (!OnUpdatePkBool.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkBool")); + } + return false; + } + + OnUpdatePkBool.Broadcast(Context, Args.B, Args.Data); + return true; +} + void URemoteReducers::UpdatePkConnectionId(const FSpacetimeDBConnectionId& A, const int32 Data) { if (!Conn) @@ -7028,6 +9731,21 @@ bool URemoteReducers::InvokeUpdatePkConnectionId(const FReducerEventContext& Con return true; } +bool URemoteReducers::InvokeUpdatePkConnectionIdWithArgs(const FReducerEventContext& Context, const FUpdatePkConnectionIdArgs& Args) +{ + if (!OnUpdatePkConnectionId.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkConnectionId")); + } + return false; + } + + OnUpdatePkConnectionId.Broadcast(Context, Args.A, Args.Data); + return true; +} + void URemoteReducers::UpdatePkI128(const FSpacetimeDBInt128& N, const int32 Data) { if (!Conn) @@ -7057,6 +9775,21 @@ bool URemoteReducers::InvokeUpdatePkI128(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeUpdatePkI128WithArgs(const FReducerEventContext& Context, const FUpdatePkI128Args& Args) +{ + if (!OnUpdatePkI128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkI128")); + } + return false; + } + + OnUpdatePkI128.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdatePkI16(const int16 N, const int32 Data) { if (!Conn) @@ -7086,6 +9819,21 @@ bool URemoteReducers::InvokeUpdatePkI16(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeUpdatePkI16WithArgs(const FReducerEventContext& Context, const FUpdatePkI16Args& Args) +{ + if (!OnUpdatePkI16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkI16")); + } + return false; + } + + OnUpdatePkI16.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdatePkI256(const FSpacetimeDBInt256& N, const int32 Data) { if (!Conn) @@ -7115,6 +9863,21 @@ bool URemoteReducers::InvokeUpdatePkI256(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeUpdatePkI256WithArgs(const FReducerEventContext& Context, const FUpdatePkI256Args& Args) +{ + if (!OnUpdatePkI256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkI256")); + } + return false; + } + + OnUpdatePkI256.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdatePkI32(const int32 N, const int32 Data) { if (!Conn) @@ -7144,6 +9907,21 @@ bool URemoteReducers::InvokeUpdatePkI32(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeUpdatePkI32WithArgs(const FReducerEventContext& Context, const FUpdatePkI32Args& Args) +{ + if (!OnUpdatePkI32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkI32")); + } + return false; + } + + OnUpdatePkI32.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdatePkI64(const int64 N, const int32 Data) { if (!Conn) @@ -7173,6 +9951,21 @@ bool URemoteReducers::InvokeUpdatePkI64(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeUpdatePkI64WithArgs(const FReducerEventContext& Context, const FUpdatePkI64Args& Args) +{ + if (!OnUpdatePkI64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkI64")); + } + return false; + } + + OnUpdatePkI64.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdatePkI8(const int8 N, const int32 Data) { if (!Conn) @@ -7202,6 +9995,21 @@ bool URemoteReducers::InvokeUpdatePkI8(const FReducerEventContext& Context, cons return true; } +bool URemoteReducers::InvokeUpdatePkI8WithArgs(const FReducerEventContext& Context, const FUpdatePkI8Args& Args) +{ + if (!OnUpdatePkI8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkI8")); + } + return false; + } + + OnUpdatePkI8.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdatePkIdentity(const FSpacetimeDBIdentity& I, const int32 Data) { if (!Conn) @@ -7231,6 +10039,21 @@ bool URemoteReducers::InvokeUpdatePkIdentity(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeUpdatePkIdentityWithArgs(const FReducerEventContext& Context, const FUpdatePkIdentityArgs& Args) +{ + if (!OnUpdatePkIdentity.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkIdentity")); + } + return false; + } + + OnUpdatePkIdentity.Broadcast(Context, Args.I, Args.Data); + return true; +} + void URemoteReducers::UpdatePkSimpleEnum(const ESimpleEnumType& A, const int32 Data) { if (!Conn) @@ -7260,6 +10083,21 @@ bool URemoteReducers::InvokeUpdatePkSimpleEnum(const FReducerEventContext& Conte return true; } +bool URemoteReducers::InvokeUpdatePkSimpleEnumWithArgs(const FReducerEventContext& Context, const FUpdatePkSimpleEnumArgs& Args) +{ + if (!OnUpdatePkSimpleEnum.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkSimpleEnum")); + } + return false; + } + + OnUpdatePkSimpleEnum.Broadcast(Context, Args.A, Args.Data); + return true; +} + void URemoteReducers::UpdatePkString(const FString& S, const int32 Data) { if (!Conn) @@ -7289,6 +10127,21 @@ bool URemoteReducers::InvokeUpdatePkString(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeUpdatePkStringWithArgs(const FReducerEventContext& Context, const FUpdatePkStringArgs& Args) +{ + if (!OnUpdatePkString.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkString")); + } + return false; + } + + OnUpdatePkString.Broadcast(Context, Args.S, Args.Data); + return true; +} + void URemoteReducers::UpdatePkU128(const FSpacetimeDBUInt128& N, const int32 Data) { if (!Conn) @@ -7318,6 +10171,21 @@ bool URemoteReducers::InvokeUpdatePkU128(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeUpdatePkU128WithArgs(const FReducerEventContext& Context, const FUpdatePkU128Args& Args) +{ + if (!OnUpdatePkU128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkU128")); + } + return false; + } + + OnUpdatePkU128.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdatePkU16(const uint16 N, const int32 Data) { if (!Conn) @@ -7347,6 +10215,21 @@ bool URemoteReducers::InvokeUpdatePkU16(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeUpdatePkU16WithArgs(const FReducerEventContext& Context, const FUpdatePkU16Args& Args) +{ + if (!OnUpdatePkU16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkU16")); + } + return false; + } + + OnUpdatePkU16.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdatePkU256(const FSpacetimeDBUInt256& N, const int32 Data) { if (!Conn) @@ -7376,6 +10259,21 @@ bool URemoteReducers::InvokeUpdatePkU256(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeUpdatePkU256WithArgs(const FReducerEventContext& Context, const FUpdatePkU256Args& Args) +{ + if (!OnUpdatePkU256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkU256")); + } + return false; + } + + OnUpdatePkU256.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdatePkU32(const uint32 N, const int32 Data) { if (!Conn) @@ -7405,6 +10303,21 @@ bool URemoteReducers::InvokeUpdatePkU32(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeUpdatePkU32WithArgs(const FReducerEventContext& Context, const FUpdatePkU32Args& Args) +{ + if (!OnUpdatePkU32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkU32")); + } + return false; + } + + OnUpdatePkU32.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdatePkU32Two(const uint32 N, const int32 Data) { if (!Conn) @@ -7434,6 +10347,21 @@ bool URemoteReducers::InvokeUpdatePkU32Two(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeUpdatePkU32TwoWithArgs(const FReducerEventContext& Context, const FUpdatePkU32TwoArgs& Args) +{ + if (!OnUpdatePkU32Two.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkU32Two")); + } + return false; + } + + OnUpdatePkU32Two.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdatePkU64(const uint64 N, const int32 Data) { if (!Conn) @@ -7463,6 +10391,21 @@ bool URemoteReducers::InvokeUpdatePkU64(const FReducerEventContext& Context, con return true; } +bool URemoteReducers::InvokeUpdatePkU64WithArgs(const FReducerEventContext& Context, const FUpdatePkU64Args& Args) +{ + if (!OnUpdatePkU64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkU64")); + } + return false; + } + + OnUpdatePkU64.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdatePkU8(const uint8 N, const int32 Data) { if (!Conn) @@ -7478,17 +10421,32 @@ bool URemoteReducers::InvokeUpdatePkU8(const FReducerEventContext& Context, cons { if (!OnUpdatePkU8.IsBound()) { - // Handle unhandled reducer error + // Handle unhandled reducer error + if (InternalOnUnhandledReducerError.IsBound()) + { + // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases + // For now, just broadcast any error + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkU8")); + } + return false; + } + + OnUpdatePkU8.Broadcast(Context, Args->N, Args->Data); + return true; +} + +bool URemoteReducers::InvokeUpdatePkU8WithArgs(const FReducerEventContext& Context, const FUpdatePkU8Args& Args) +{ + if (!OnUpdatePkU8.IsBound()) + { if (InternalOnUnhandledReducerError.IsBound()) { - // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases - // For now, just broadcast any error InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkU8")); } return false; } - OnUpdatePkU8.Broadcast(Context, Args->N, Args->Data); + OnUpdatePkU8.Broadcast(Context, Args.N, Args.Data); return true; } @@ -7521,6 +10479,21 @@ bool URemoteReducers::InvokeUpdatePkUuid(const FReducerEventContext& Context, co return true; } +bool URemoteReducers::InvokeUpdatePkUuidWithArgs(const FReducerEventContext& Context, const FUpdatePkUuidArgs& Args) +{ + if (!OnUpdatePkUuid.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdatePkUuid")); + } + return false; + } + + OnUpdatePkUuid.Broadcast(Context, Args.U, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueBool(const bool B, const int32 Data) { if (!Conn) @@ -7550,6 +10523,21 @@ bool URemoteReducers::InvokeUpdateUniqueBool(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeUpdateUniqueBoolWithArgs(const FReducerEventContext& Context, const FUpdateUniqueBoolArgs& Args) +{ + if (!OnUpdateUniqueBool.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueBool")); + } + return false; + } + + OnUpdateUniqueBool.Broadcast(Context, Args.B, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueConnectionId(const FSpacetimeDBConnectionId& A, const int32 Data) { if (!Conn) @@ -7579,6 +10567,21 @@ bool URemoteReducers::InvokeUpdateUniqueConnectionId(const FReducerEventContext& return true; } +bool URemoteReducers::InvokeUpdateUniqueConnectionIdWithArgs(const FReducerEventContext& Context, const FUpdateUniqueConnectionIdArgs& Args) +{ + if (!OnUpdateUniqueConnectionId.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueConnectionId")); + } + return false; + } + + OnUpdateUniqueConnectionId.Broadcast(Context, Args.A, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueI128(const FSpacetimeDBInt128& N, const int32 Data) { if (!Conn) @@ -7608,6 +10611,21 @@ bool URemoteReducers::InvokeUpdateUniqueI128(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeUpdateUniqueI128WithArgs(const FReducerEventContext& Context, const FUpdateUniqueI128Args& Args) +{ + if (!OnUpdateUniqueI128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueI128")); + } + return false; + } + + OnUpdateUniqueI128.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueI16(const int16 N, const int32 Data) { if (!Conn) @@ -7637,6 +10655,21 @@ bool URemoteReducers::InvokeUpdateUniqueI16(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeUpdateUniqueI16WithArgs(const FReducerEventContext& Context, const FUpdateUniqueI16Args& Args) +{ + if (!OnUpdateUniqueI16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueI16")); + } + return false; + } + + OnUpdateUniqueI16.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueI256(const FSpacetimeDBInt256& N, const int32 Data) { if (!Conn) @@ -7666,6 +10699,21 @@ bool URemoteReducers::InvokeUpdateUniqueI256(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeUpdateUniqueI256WithArgs(const FReducerEventContext& Context, const FUpdateUniqueI256Args& Args) +{ + if (!OnUpdateUniqueI256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueI256")); + } + return false; + } + + OnUpdateUniqueI256.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueI32(const int32 N, const int32 Data) { if (!Conn) @@ -7695,6 +10743,21 @@ bool URemoteReducers::InvokeUpdateUniqueI32(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeUpdateUniqueI32WithArgs(const FReducerEventContext& Context, const FUpdateUniqueI32Args& Args) +{ + if (!OnUpdateUniqueI32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueI32")); + } + return false; + } + + OnUpdateUniqueI32.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueI64(const int64 N, const int32 Data) { if (!Conn) @@ -7724,6 +10787,21 @@ bool URemoteReducers::InvokeUpdateUniqueI64(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeUpdateUniqueI64WithArgs(const FReducerEventContext& Context, const FUpdateUniqueI64Args& Args) +{ + if (!OnUpdateUniqueI64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueI64")); + } + return false; + } + + OnUpdateUniqueI64.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueI8(const int8 N, const int32 Data) { if (!Conn) @@ -7753,6 +10831,21 @@ bool URemoteReducers::InvokeUpdateUniqueI8(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeUpdateUniqueI8WithArgs(const FReducerEventContext& Context, const FUpdateUniqueI8Args& Args) +{ + if (!OnUpdateUniqueI8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueI8")); + } + return false; + } + + OnUpdateUniqueI8.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueIdentity(const FSpacetimeDBIdentity& I, const int32 Data) { if (!Conn) @@ -7782,6 +10875,21 @@ bool URemoteReducers::InvokeUpdateUniqueIdentity(const FReducerEventContext& Con return true; } +bool URemoteReducers::InvokeUpdateUniqueIdentityWithArgs(const FReducerEventContext& Context, const FUpdateUniqueIdentityArgs& Args) +{ + if (!OnUpdateUniqueIdentity.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueIdentity")); + } + return false; + } + + OnUpdateUniqueIdentity.Broadcast(Context, Args.I, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueString(const FString& S, const int32 Data) { if (!Conn) @@ -7811,6 +10919,21 @@ bool URemoteReducers::InvokeUpdateUniqueString(const FReducerEventContext& Conte return true; } +bool URemoteReducers::InvokeUpdateUniqueStringWithArgs(const FReducerEventContext& Context, const FUpdateUniqueStringArgs& Args) +{ + if (!OnUpdateUniqueString.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueString")); + } + return false; + } + + OnUpdateUniqueString.Broadcast(Context, Args.S, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueU128(const FSpacetimeDBUInt128& N, const int32 Data) { if (!Conn) @@ -7840,6 +10963,21 @@ bool URemoteReducers::InvokeUpdateUniqueU128(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeUpdateUniqueU128WithArgs(const FReducerEventContext& Context, const FUpdateUniqueU128Args& Args) +{ + if (!OnUpdateUniqueU128.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueU128")); + } + return false; + } + + OnUpdateUniqueU128.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueU16(const uint16 N, const int32 Data) { if (!Conn) @@ -7869,6 +11007,21 @@ bool URemoteReducers::InvokeUpdateUniqueU16(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeUpdateUniqueU16WithArgs(const FReducerEventContext& Context, const FUpdateUniqueU16Args& Args) +{ + if (!OnUpdateUniqueU16.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueU16")); + } + return false; + } + + OnUpdateUniqueU16.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueU256(const FSpacetimeDBUInt256& N, const int32 Data) { if (!Conn) @@ -7898,6 +11051,21 @@ bool URemoteReducers::InvokeUpdateUniqueU256(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeUpdateUniqueU256WithArgs(const FReducerEventContext& Context, const FUpdateUniqueU256Args& Args) +{ + if (!OnUpdateUniqueU256.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueU256")); + } + return false; + } + + OnUpdateUniqueU256.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueU32(const uint32 N, const int32 Data) { if (!Conn) @@ -7927,6 +11095,21 @@ bool URemoteReducers::InvokeUpdateUniqueU32(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeUpdateUniqueU32WithArgs(const FReducerEventContext& Context, const FUpdateUniqueU32Args& Args) +{ + if (!OnUpdateUniqueU32.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueU32")); + } + return false; + } + + OnUpdateUniqueU32.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueU64(const uint64 N, const int32 Data) { if (!Conn) @@ -7956,6 +11139,21 @@ bool URemoteReducers::InvokeUpdateUniqueU64(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeUpdateUniqueU64WithArgs(const FReducerEventContext& Context, const FUpdateUniqueU64Args& Args) +{ + if (!OnUpdateUniqueU64.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueU64")); + } + return false; + } + + OnUpdateUniqueU64.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueU8(const uint8 N, const int32 Data) { if (!Conn) @@ -7985,6 +11183,21 @@ bool URemoteReducers::InvokeUpdateUniqueU8(const FReducerEventContext& Context, return true; } +bool URemoteReducers::InvokeUpdateUniqueU8WithArgs(const FReducerEventContext& Context, const FUpdateUniqueU8Args& Args) +{ + if (!OnUpdateUniqueU8.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueU8")); + } + return false; + } + + OnUpdateUniqueU8.Broadcast(Context, Args.N, Args.Data); + return true; +} + void URemoteReducers::UpdateUniqueUuid(const FSpacetimeDBUuid& U, const int32 Data) { if (!Conn) @@ -8014,6 +11227,21 @@ bool URemoteReducers::InvokeUpdateUniqueUuid(const FReducerEventContext& Context return true; } +bool URemoteReducers::InvokeUpdateUniqueUuidWithArgs(const FReducerEventContext& Context, const FUpdateUniqueUuidArgs& Args) +{ + if (!OnUpdateUniqueUuid.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for UpdateUniqueUuid")); + } + return false; + } + + OnUpdateUniqueUuid.Broadcast(Context, Args.U, Args.Data); + return true; +} + void UDbConnection::PostInitProperties() { Super::PostInitProperties(); @@ -8071,1649 +11299,1189 @@ void UDbConnection::ReducerEvent(const FReducerEvent& Event) if (ReducerName == TEXT("delete_from_btree_u32")) { FDeleteFromBtreeU32Args Args = ReducerEvent.Reducer.GetAsDeleteFromBtreeU32(); - UDeleteFromBtreeU32Reducer* Reducer = NewObject(); - Reducer->Rows = Args.Rows; - Reducers->InvokeDeleteFromBtreeU32(Context, Reducer); + Reducers->InvokeDeleteFromBtreeU32WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_large_table")) { FDeleteLargeTableArgs Args = ReducerEvent.Reducer.GetAsDeleteLargeTable(); - UDeleteLargeTableReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducer->B = Args.B; - Reducer->C = Args.C; - Reducer->D = Args.D; - Reducer->E = Args.E; - Reducer->F = Args.F; - Reducer->G = Args.G; - Reducer->H = Args.H; - Reducer->I = Args.I; - Reducer->J = Args.J; - Reducer->K = Args.K; - Reducer->L = Args.L; - Reducer->M = Args.M; - Reducer->N = Args.N; - Reducer->O = Args.O; - Reducer->P = Args.P; - Reducer->Q = Args.Q; - Reducer->R = Args.R; - Reducer->S = Args.S; - Reducer->T = Args.T; - Reducer->U = Args.U; - Reducer->V = Args.V; - Reducers->InvokeDeleteLargeTable(Context, Reducer); + Reducers->InvokeDeleteLargeTableWithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_bool")) { FDeletePkBoolArgs Args = ReducerEvent.Reducer.GetAsDeletePkBool(); - UDeletePkBoolReducer* Reducer = NewObject(); - Reducer->B = Args.B; - Reducers->InvokeDeletePkBool(Context, Reducer); + Reducers->InvokeDeletePkBoolWithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_connection_id")) { FDeletePkConnectionIdArgs Args = ReducerEvent.Reducer.GetAsDeletePkConnectionId(); - UDeletePkConnectionIdReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducers->InvokeDeletePkConnectionId(Context, Reducer); + Reducers->InvokeDeletePkConnectionIdWithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_i128")) { FDeletePkI128Args Args = ReducerEvent.Reducer.GetAsDeletePkI128(); - UDeletePkI128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeletePkI128(Context, Reducer); + Reducers->InvokeDeletePkI128WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_i16")) { FDeletePkI16Args Args = ReducerEvent.Reducer.GetAsDeletePkI16(); - UDeletePkI16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeletePkI16(Context, Reducer); + Reducers->InvokeDeletePkI16WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_i256")) { FDeletePkI256Args Args = ReducerEvent.Reducer.GetAsDeletePkI256(); - UDeletePkI256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeletePkI256(Context, Reducer); + Reducers->InvokeDeletePkI256WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_i32")) { FDeletePkI32Args Args = ReducerEvent.Reducer.GetAsDeletePkI32(); - UDeletePkI32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeletePkI32(Context, Reducer); + Reducers->InvokeDeletePkI32WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_i64")) { FDeletePkI64Args Args = ReducerEvent.Reducer.GetAsDeletePkI64(); - UDeletePkI64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeletePkI64(Context, Reducer); + Reducers->InvokeDeletePkI64WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_i8")) { FDeletePkI8Args Args = ReducerEvent.Reducer.GetAsDeletePkI8(); - UDeletePkI8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeletePkI8(Context, Reducer); + Reducers->InvokeDeletePkI8WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_identity")) { FDeletePkIdentityArgs Args = ReducerEvent.Reducer.GetAsDeletePkIdentity(); - UDeletePkIdentityReducer* Reducer = NewObject(); - Reducer->I = Args.I; - Reducers->InvokeDeletePkIdentity(Context, Reducer); + Reducers->InvokeDeletePkIdentityWithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_string")) { FDeletePkStringArgs Args = ReducerEvent.Reducer.GetAsDeletePkString(); - UDeletePkStringReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeDeletePkString(Context, Reducer); + Reducers->InvokeDeletePkStringWithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_u128")) { FDeletePkU128Args Args = ReducerEvent.Reducer.GetAsDeletePkU128(); - UDeletePkU128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeletePkU128(Context, Reducer); + Reducers->InvokeDeletePkU128WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_u16")) { FDeletePkU16Args Args = ReducerEvent.Reducer.GetAsDeletePkU16(); - UDeletePkU16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeletePkU16(Context, Reducer); + Reducers->InvokeDeletePkU16WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_u256")) { FDeletePkU256Args Args = ReducerEvent.Reducer.GetAsDeletePkU256(); - UDeletePkU256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeletePkU256(Context, Reducer); + Reducers->InvokeDeletePkU256WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_u32")) { FDeletePkU32Args Args = ReducerEvent.Reducer.GetAsDeletePkU32(); - UDeletePkU32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeletePkU32(Context, Reducer); + Reducers->InvokeDeletePkU32WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_u32_insert_pk_u32_two")) { FDeletePkU32InsertPkU32TwoArgs Args = ReducerEvent.Reducer.GetAsDeletePkU32InsertPkU32Two(); - UDeletePkU32InsertPkU32TwoReducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeDeletePkU32InsertPkU32Two(Context, Reducer); + Reducers->InvokeDeletePkU32InsertPkU32TwoWithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_u32_two")) { FDeletePkU32TwoArgs Args = ReducerEvent.Reducer.GetAsDeletePkU32Two(); - UDeletePkU32TwoReducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeletePkU32Two(Context, Reducer); + Reducers->InvokeDeletePkU32TwoWithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_u64")) { FDeletePkU64Args Args = ReducerEvent.Reducer.GetAsDeletePkU64(); - UDeletePkU64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeletePkU64(Context, Reducer); + Reducers->InvokeDeletePkU64WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_u8")) { FDeletePkU8Args Args = ReducerEvent.Reducer.GetAsDeletePkU8(); - UDeletePkU8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeletePkU8(Context, Reducer); + Reducers->InvokeDeletePkU8WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_pk_uuid")) { FDeletePkUuidArgs Args = ReducerEvent.Reducer.GetAsDeletePkUuid(); - UDeletePkUuidReducer* Reducer = NewObject(); - Reducer->U = Args.U; - Reducers->InvokeDeletePkUuid(Context, Reducer); + Reducers->InvokeDeletePkUuidWithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_bool")) { FDeleteUniqueBoolArgs Args = ReducerEvent.Reducer.GetAsDeleteUniqueBool(); - UDeleteUniqueBoolReducer* Reducer = NewObject(); - Reducer->B = Args.B; - Reducers->InvokeDeleteUniqueBool(Context, Reducer); + Reducers->InvokeDeleteUniqueBoolWithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_connection_id")) { FDeleteUniqueConnectionIdArgs Args = ReducerEvent.Reducer.GetAsDeleteUniqueConnectionId(); - UDeleteUniqueConnectionIdReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducers->InvokeDeleteUniqueConnectionId(Context, Reducer); + Reducers->InvokeDeleteUniqueConnectionIdWithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_i128")) { FDeleteUniqueI128Args Args = ReducerEvent.Reducer.GetAsDeleteUniqueI128(); - UDeleteUniqueI128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeleteUniqueI128(Context, Reducer); + Reducers->InvokeDeleteUniqueI128WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_i16")) { FDeleteUniqueI16Args Args = ReducerEvent.Reducer.GetAsDeleteUniqueI16(); - UDeleteUniqueI16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeleteUniqueI16(Context, Reducer); + Reducers->InvokeDeleteUniqueI16WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_i256")) { FDeleteUniqueI256Args Args = ReducerEvent.Reducer.GetAsDeleteUniqueI256(); - UDeleteUniqueI256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeleteUniqueI256(Context, Reducer); + Reducers->InvokeDeleteUniqueI256WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_i32")) { FDeleteUniqueI32Args Args = ReducerEvent.Reducer.GetAsDeleteUniqueI32(); - UDeleteUniqueI32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeleteUniqueI32(Context, Reducer); + Reducers->InvokeDeleteUniqueI32WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_i64")) { FDeleteUniqueI64Args Args = ReducerEvent.Reducer.GetAsDeleteUniqueI64(); - UDeleteUniqueI64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeleteUniqueI64(Context, Reducer); + Reducers->InvokeDeleteUniqueI64WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_i8")) { FDeleteUniqueI8Args Args = ReducerEvent.Reducer.GetAsDeleteUniqueI8(); - UDeleteUniqueI8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeleteUniqueI8(Context, Reducer); + Reducers->InvokeDeleteUniqueI8WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_identity")) { FDeleteUniqueIdentityArgs Args = ReducerEvent.Reducer.GetAsDeleteUniqueIdentity(); - UDeleteUniqueIdentityReducer* Reducer = NewObject(); - Reducer->I = Args.I; - Reducers->InvokeDeleteUniqueIdentity(Context, Reducer); + Reducers->InvokeDeleteUniqueIdentityWithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_string")) { FDeleteUniqueStringArgs Args = ReducerEvent.Reducer.GetAsDeleteUniqueString(); - UDeleteUniqueStringReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeDeleteUniqueString(Context, Reducer); + Reducers->InvokeDeleteUniqueStringWithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_u128")) { FDeleteUniqueU128Args Args = ReducerEvent.Reducer.GetAsDeleteUniqueU128(); - UDeleteUniqueU128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeleteUniqueU128(Context, Reducer); + Reducers->InvokeDeleteUniqueU128WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_u16")) { FDeleteUniqueU16Args Args = ReducerEvent.Reducer.GetAsDeleteUniqueU16(); - UDeleteUniqueU16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeleteUniqueU16(Context, Reducer); + Reducers->InvokeDeleteUniqueU16WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_u256")) { FDeleteUniqueU256Args Args = ReducerEvent.Reducer.GetAsDeleteUniqueU256(); - UDeleteUniqueU256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeleteUniqueU256(Context, Reducer); + Reducers->InvokeDeleteUniqueU256WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_u32")) { FDeleteUniqueU32Args Args = ReducerEvent.Reducer.GetAsDeleteUniqueU32(); - UDeleteUniqueU32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeleteUniqueU32(Context, Reducer); + Reducers->InvokeDeleteUniqueU32WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_u64")) { FDeleteUniqueU64Args Args = ReducerEvent.Reducer.GetAsDeleteUniqueU64(); - UDeleteUniqueU64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeleteUniqueU64(Context, Reducer); + Reducers->InvokeDeleteUniqueU64WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_u8")) { FDeleteUniqueU8Args Args = ReducerEvent.Reducer.GetAsDeleteUniqueU8(); - UDeleteUniqueU8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeDeleteUniqueU8(Context, Reducer); + Reducers->InvokeDeleteUniqueU8WithArgs(Context, Args); return; } if (ReducerName == TEXT("delete_unique_uuid")) { FDeleteUniqueUuidArgs Args = ReducerEvent.Reducer.GetAsDeleteUniqueUuid(); - UDeleteUniqueUuidReducer* Reducer = NewObject(); - Reducer->U = Args.U; - Reducers->InvokeDeleteUniqueUuid(Context, Reducer); + Reducers->InvokeDeleteUniqueUuidWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_call_timestamp")) { FInsertCallTimestampArgs Args = ReducerEvent.Reducer.GetAsInsertCallTimestamp(); - UInsertCallTimestampReducer* Reducer = NewObject(); - Reducers->InvokeInsertCallTimestamp(Context, Reducer); + Reducers->InvokeInsertCallTimestampWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_call_uuid_v4")) { FInsertCallUuidV4Args Args = ReducerEvent.Reducer.GetAsInsertCallUuidV4(); - UInsertCallUuidV4Reducer* Reducer = NewObject(); - Reducers->InvokeInsertCallUuidV4(Context, Reducer); + Reducers->InvokeInsertCallUuidV4WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_call_uuid_v7")) { FInsertCallUuidV7Args Args = ReducerEvent.Reducer.GetAsInsertCallUuidV7(); - UInsertCallUuidV7Reducer* Reducer = NewObject(); - Reducers->InvokeInsertCallUuidV7(Context, Reducer); + Reducers->InvokeInsertCallUuidV7WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_caller_one_connection_id")) { FInsertCallerOneConnectionIdArgs Args = ReducerEvent.Reducer.GetAsInsertCallerOneConnectionId(); - UInsertCallerOneConnectionIdReducer* Reducer = NewObject(); - Reducers->InvokeInsertCallerOneConnectionId(Context, Reducer); + Reducers->InvokeInsertCallerOneConnectionIdWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_caller_one_identity")) { FInsertCallerOneIdentityArgs Args = ReducerEvent.Reducer.GetAsInsertCallerOneIdentity(); - UInsertCallerOneIdentityReducer* Reducer = NewObject(); - Reducers->InvokeInsertCallerOneIdentity(Context, Reducer); + Reducers->InvokeInsertCallerOneIdentityWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_caller_pk_connection_id")) { FInsertCallerPkConnectionIdArgs Args = ReducerEvent.Reducer.GetAsInsertCallerPkConnectionId(); - UInsertCallerPkConnectionIdReducer* Reducer = NewObject(); - Reducer->Data = Args.Data; - Reducers->InvokeInsertCallerPkConnectionId(Context, Reducer); + Reducers->InvokeInsertCallerPkConnectionIdWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_caller_pk_identity")) { FInsertCallerPkIdentityArgs Args = ReducerEvent.Reducer.GetAsInsertCallerPkIdentity(); - UInsertCallerPkIdentityReducer* Reducer = NewObject(); - Reducer->Data = Args.Data; - Reducers->InvokeInsertCallerPkIdentity(Context, Reducer); + Reducers->InvokeInsertCallerPkIdentityWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_caller_unique_connection_id")) { FInsertCallerUniqueConnectionIdArgs Args = ReducerEvent.Reducer.GetAsInsertCallerUniqueConnectionId(); - UInsertCallerUniqueConnectionIdReducer* Reducer = NewObject(); - Reducer->Data = Args.Data; - Reducers->InvokeInsertCallerUniqueConnectionId(Context, Reducer); + Reducers->InvokeInsertCallerUniqueConnectionIdWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_caller_unique_identity")) { FInsertCallerUniqueIdentityArgs Args = ReducerEvent.Reducer.GetAsInsertCallerUniqueIdentity(); - UInsertCallerUniqueIdentityReducer* Reducer = NewObject(); - Reducer->Data = Args.Data; - Reducers->InvokeInsertCallerUniqueIdentity(Context, Reducer); + Reducers->InvokeInsertCallerUniqueIdentityWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_caller_vec_connection_id")) { FInsertCallerVecConnectionIdArgs Args = ReducerEvent.Reducer.GetAsInsertCallerVecConnectionId(); - UInsertCallerVecConnectionIdReducer* Reducer = NewObject(); - Reducers->InvokeInsertCallerVecConnectionId(Context, Reducer); + Reducers->InvokeInsertCallerVecConnectionIdWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_caller_vec_identity")) { FInsertCallerVecIdentityArgs Args = ReducerEvent.Reducer.GetAsInsertCallerVecIdentity(); - UInsertCallerVecIdentityReducer* Reducer = NewObject(); - Reducers->InvokeInsertCallerVecIdentity(Context, Reducer); + Reducers->InvokeInsertCallerVecIdentityWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_into_btree_u32")) { FInsertIntoBtreeU32Args Args = ReducerEvent.Reducer.GetAsInsertIntoBtreeU32(); - UInsertIntoBtreeU32Reducer* Reducer = NewObject(); - Reducer->Rows = Args.Rows; - Reducers->InvokeInsertIntoBtreeU32(Context, Reducer); + Reducers->InvokeInsertIntoBtreeU32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_into_indexed_simple_enum")) { FInsertIntoIndexedSimpleEnumArgs Args = ReducerEvent.Reducer.GetAsInsertIntoIndexedSimpleEnum(); - UInsertIntoIndexedSimpleEnumReducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertIntoIndexedSimpleEnum(Context, Reducer); + Reducers->InvokeInsertIntoIndexedSimpleEnumWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_into_pk_btree_u32")) { FInsertIntoPkBtreeU32Args Args = ReducerEvent.Reducer.GetAsInsertIntoPkBtreeU32(); - UInsertIntoPkBtreeU32Reducer* Reducer = NewObject(); - Reducer->PkU32 = Args.PkU32; - Reducer->BtU32 = Args.BtU32; - Reducers->InvokeInsertIntoPkBtreeU32(Context, Reducer); + Reducers->InvokeInsertIntoPkBtreeU32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_large_table")) { FInsertLargeTableArgs Args = ReducerEvent.Reducer.GetAsInsertLargeTable(); - UInsertLargeTableReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducer->B = Args.B; - Reducer->C = Args.C; - Reducer->D = Args.D; - Reducer->E = Args.E; - Reducer->F = Args.F; - Reducer->G = Args.G; - Reducer->H = Args.H; - Reducer->I = Args.I; - Reducer->J = Args.J; - Reducer->K = Args.K; - Reducer->L = Args.L; - Reducer->M = Args.M; - Reducer->N = Args.N; - Reducer->O = Args.O; - Reducer->P = Args.P; - Reducer->Q = Args.Q; - Reducer->R = Args.R; - Reducer->S = Args.S; - Reducer->T = Args.T; - Reducer->U = Args.U; - Reducer->V = Args.V; - Reducers->InvokeInsertLargeTable(Context, Reducer); + Reducers->InvokeInsertLargeTableWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_bool")) { FInsertOneBoolArgs Args = ReducerEvent.Reducer.GetAsInsertOneBool(); - UInsertOneBoolReducer* Reducer = NewObject(); - Reducer->B = Args.B; - Reducers->InvokeInsertOneBool(Context, Reducer); + Reducers->InvokeInsertOneBoolWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_byte_struct")) { FInsertOneByteStructArgs Args = ReducerEvent.Reducer.GetAsInsertOneByteStruct(); - UInsertOneByteStructReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeInsertOneByteStruct(Context, Reducer); + Reducers->InvokeInsertOneByteStructWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_connection_id")) { FInsertOneConnectionIdArgs Args = ReducerEvent.Reducer.GetAsInsertOneConnectionId(); - UInsertOneConnectionIdReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducers->InvokeInsertOneConnectionId(Context, Reducer); + Reducers->InvokeInsertOneConnectionIdWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_enum_with_payload")) { FInsertOneEnumWithPayloadArgs Args = ReducerEvent.Reducer.GetAsInsertOneEnumWithPayload(); - UInsertOneEnumWithPayloadReducer* Reducer = NewObject(); - Reducer->E = Args.E; - Reducers->InvokeInsertOneEnumWithPayload(Context, Reducer); + Reducers->InvokeInsertOneEnumWithPayloadWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_every_primitive_struct")) { FInsertOneEveryPrimitiveStructArgs Args = ReducerEvent.Reducer.GetAsInsertOneEveryPrimitiveStruct(); - UInsertOneEveryPrimitiveStructReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeInsertOneEveryPrimitiveStruct(Context, Reducer); + Reducers->InvokeInsertOneEveryPrimitiveStructWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_every_vec_struct")) { FInsertOneEveryVecStructArgs Args = ReducerEvent.Reducer.GetAsInsertOneEveryVecStruct(); - UInsertOneEveryVecStructReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeInsertOneEveryVecStruct(Context, Reducer); + Reducers->InvokeInsertOneEveryVecStructWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_f32")) { FInsertOneF32Args Args = ReducerEvent.Reducer.GetAsInsertOneF32(); - UInsertOneF32Reducer* Reducer = NewObject(); - Reducer->F = Args.F; - Reducers->InvokeInsertOneF32(Context, Reducer); + Reducers->InvokeInsertOneF32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_f64")) { FInsertOneF64Args Args = ReducerEvent.Reducer.GetAsInsertOneF64(); - UInsertOneF64Reducer* Reducer = NewObject(); - Reducer->F = Args.F; - Reducers->InvokeInsertOneF64(Context, Reducer); + Reducers->InvokeInsertOneF64WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_i128")) { FInsertOneI128Args Args = ReducerEvent.Reducer.GetAsInsertOneI128(); - UInsertOneI128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertOneI128(Context, Reducer); + Reducers->InvokeInsertOneI128WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_i16")) { FInsertOneI16Args Args = ReducerEvent.Reducer.GetAsInsertOneI16(); - UInsertOneI16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertOneI16(Context, Reducer); + Reducers->InvokeInsertOneI16WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_i256")) { FInsertOneI256Args Args = ReducerEvent.Reducer.GetAsInsertOneI256(); - UInsertOneI256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertOneI256(Context, Reducer); + Reducers->InvokeInsertOneI256WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_i32")) { FInsertOneI32Args Args = ReducerEvent.Reducer.GetAsInsertOneI32(); - UInsertOneI32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertOneI32(Context, Reducer); + Reducers->InvokeInsertOneI32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_i64")) { FInsertOneI64Args Args = ReducerEvent.Reducer.GetAsInsertOneI64(); - UInsertOneI64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertOneI64(Context, Reducer); + Reducers->InvokeInsertOneI64WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_i8")) { FInsertOneI8Args Args = ReducerEvent.Reducer.GetAsInsertOneI8(); - UInsertOneI8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertOneI8(Context, Reducer); + Reducers->InvokeInsertOneI8WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_identity")) { FInsertOneIdentityArgs Args = ReducerEvent.Reducer.GetAsInsertOneIdentity(); - UInsertOneIdentityReducer* Reducer = NewObject(); - Reducer->I = Args.I; - Reducers->InvokeInsertOneIdentity(Context, Reducer); + Reducers->InvokeInsertOneIdentityWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_simple_enum")) { FInsertOneSimpleEnumArgs Args = ReducerEvent.Reducer.GetAsInsertOneSimpleEnum(); - UInsertOneSimpleEnumReducer* Reducer = NewObject(); - Reducer->E = Args.E; - Reducers->InvokeInsertOneSimpleEnum(Context, Reducer); + Reducers->InvokeInsertOneSimpleEnumWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_string")) { FInsertOneStringArgs Args = ReducerEvent.Reducer.GetAsInsertOneString(); - UInsertOneStringReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeInsertOneString(Context, Reducer); + Reducers->InvokeInsertOneStringWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_timestamp")) { FInsertOneTimestampArgs Args = ReducerEvent.Reducer.GetAsInsertOneTimestamp(); - UInsertOneTimestampReducer* Reducer = NewObject(); - Reducer->T = Args.T; - Reducers->InvokeInsertOneTimestamp(Context, Reducer); + Reducers->InvokeInsertOneTimestampWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_u128")) { FInsertOneU128Args Args = ReducerEvent.Reducer.GetAsInsertOneU128(); - UInsertOneU128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertOneU128(Context, Reducer); + Reducers->InvokeInsertOneU128WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_u16")) { FInsertOneU16Args Args = ReducerEvent.Reducer.GetAsInsertOneU16(); - UInsertOneU16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertOneU16(Context, Reducer); + Reducers->InvokeInsertOneU16WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_u256")) { FInsertOneU256Args Args = ReducerEvent.Reducer.GetAsInsertOneU256(); - UInsertOneU256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertOneU256(Context, Reducer); + Reducers->InvokeInsertOneU256WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_u32")) { FInsertOneU32Args Args = ReducerEvent.Reducer.GetAsInsertOneU32(); - UInsertOneU32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertOneU32(Context, Reducer); + Reducers->InvokeInsertOneU32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_u64")) { FInsertOneU64Args Args = ReducerEvent.Reducer.GetAsInsertOneU64(); - UInsertOneU64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertOneU64(Context, Reducer); + Reducers->InvokeInsertOneU64WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_u8")) { FInsertOneU8Args Args = ReducerEvent.Reducer.GetAsInsertOneU8(); - UInsertOneU8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertOneU8(Context, Reducer); + Reducers->InvokeInsertOneU8WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_unit_struct")) { FInsertOneUnitStructArgs Args = ReducerEvent.Reducer.GetAsInsertOneUnitStruct(); - UInsertOneUnitStructReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeInsertOneUnitStruct(Context, Reducer); + Reducers->InvokeInsertOneUnitStructWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_one_uuid")) { FInsertOneUuidArgs Args = ReducerEvent.Reducer.GetAsInsertOneUuid(); - UInsertOneUuidReducer* Reducer = NewObject(); - Reducer->U = Args.U; - Reducers->InvokeInsertOneUuid(Context, Reducer); + Reducers->InvokeInsertOneUuidWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_option_every_primitive_struct")) { FInsertOptionEveryPrimitiveStructArgs Args = ReducerEvent.Reducer.GetAsInsertOptionEveryPrimitiveStruct(); - UInsertOptionEveryPrimitiveStructReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeInsertOptionEveryPrimitiveStruct(Context, Reducer); + Reducers->InvokeInsertOptionEveryPrimitiveStructWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_option_i32")) { FInsertOptionI32Args Args = ReducerEvent.Reducer.GetAsInsertOptionI32(); - UInsertOptionI32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertOptionI32(Context, Reducer); + Reducers->InvokeInsertOptionI32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_option_identity")) { FInsertOptionIdentityArgs Args = ReducerEvent.Reducer.GetAsInsertOptionIdentity(); - UInsertOptionIdentityReducer* Reducer = NewObject(); - Reducer->I = Args.I; - Reducers->InvokeInsertOptionIdentity(Context, Reducer); + Reducers->InvokeInsertOptionIdentityWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_option_simple_enum")) { FInsertOptionSimpleEnumArgs Args = ReducerEvent.Reducer.GetAsInsertOptionSimpleEnum(); - UInsertOptionSimpleEnumReducer* Reducer = NewObject(); - Reducer->E = Args.E; - Reducers->InvokeInsertOptionSimpleEnum(Context, Reducer); + Reducers->InvokeInsertOptionSimpleEnumWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_option_string")) { FInsertOptionStringArgs Args = ReducerEvent.Reducer.GetAsInsertOptionString(); - UInsertOptionStringReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeInsertOptionString(Context, Reducer); + Reducers->InvokeInsertOptionStringWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_option_uuid")) { FInsertOptionUuidArgs Args = ReducerEvent.Reducer.GetAsInsertOptionUuid(); - UInsertOptionUuidReducer* Reducer = NewObject(); - Reducer->U = Args.U; - Reducers->InvokeInsertOptionUuid(Context, Reducer); + Reducers->InvokeInsertOptionUuidWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_option_vec_option_i32")) { FInsertOptionVecOptionI32Args Args = ReducerEvent.Reducer.GetAsInsertOptionVecOptionI32(); - UInsertOptionVecOptionI32Reducer* Reducer = NewObject(); - Reducer->V = Args.V; - Reducers->InvokeInsertOptionVecOptionI32(Context, Reducer); + Reducers->InvokeInsertOptionVecOptionI32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_bool")) { FInsertPkBoolArgs Args = ReducerEvent.Reducer.GetAsInsertPkBool(); - UInsertPkBoolReducer* Reducer = NewObject(); - Reducer->B = Args.B; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkBool(Context, Reducer); + Reducers->InvokeInsertPkBoolWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_connection_id")) { FInsertPkConnectionIdArgs Args = ReducerEvent.Reducer.GetAsInsertPkConnectionId(); - UInsertPkConnectionIdReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkConnectionId(Context, Reducer); + Reducers->InvokeInsertPkConnectionIdWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_i128")) { FInsertPkI128Args Args = ReducerEvent.Reducer.GetAsInsertPkI128(); - UInsertPkI128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkI128(Context, Reducer); + Reducers->InvokeInsertPkI128WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_i16")) { FInsertPkI16Args Args = ReducerEvent.Reducer.GetAsInsertPkI16(); - UInsertPkI16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkI16(Context, Reducer); + Reducers->InvokeInsertPkI16WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_i256")) { FInsertPkI256Args Args = ReducerEvent.Reducer.GetAsInsertPkI256(); - UInsertPkI256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkI256(Context, Reducer); + Reducers->InvokeInsertPkI256WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_i32")) { FInsertPkI32Args Args = ReducerEvent.Reducer.GetAsInsertPkI32(); - UInsertPkI32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkI32(Context, Reducer); + Reducers->InvokeInsertPkI32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_i64")) { FInsertPkI64Args Args = ReducerEvent.Reducer.GetAsInsertPkI64(); - UInsertPkI64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkI64(Context, Reducer); + Reducers->InvokeInsertPkI64WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_i8")) { FInsertPkI8Args Args = ReducerEvent.Reducer.GetAsInsertPkI8(); - UInsertPkI8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkI8(Context, Reducer); + Reducers->InvokeInsertPkI8WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_identity")) { FInsertPkIdentityArgs Args = ReducerEvent.Reducer.GetAsInsertPkIdentity(); - UInsertPkIdentityReducer* Reducer = NewObject(); - Reducer->I = Args.I; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkIdentity(Context, Reducer); + Reducers->InvokeInsertPkIdentityWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_simple_enum")) { FInsertPkSimpleEnumArgs Args = ReducerEvent.Reducer.GetAsInsertPkSimpleEnum(); - UInsertPkSimpleEnumReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkSimpleEnum(Context, Reducer); + Reducers->InvokeInsertPkSimpleEnumWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_string")) { FInsertPkStringArgs Args = ReducerEvent.Reducer.GetAsInsertPkString(); - UInsertPkStringReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkString(Context, Reducer); + Reducers->InvokeInsertPkStringWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_u128")) { FInsertPkU128Args Args = ReducerEvent.Reducer.GetAsInsertPkU128(); - UInsertPkU128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkU128(Context, Reducer); + Reducers->InvokeInsertPkU128WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_u16")) { FInsertPkU16Args Args = ReducerEvent.Reducer.GetAsInsertPkU16(); - UInsertPkU16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkU16(Context, Reducer); + Reducers->InvokeInsertPkU16WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_u256")) { FInsertPkU256Args Args = ReducerEvent.Reducer.GetAsInsertPkU256(); - UInsertPkU256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkU256(Context, Reducer); + Reducers->InvokeInsertPkU256WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_u32")) { FInsertPkU32Args Args = ReducerEvent.Reducer.GetAsInsertPkU32(); - UInsertPkU32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkU32(Context, Reducer); + Reducers->InvokeInsertPkU32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_u32_two")) { FInsertPkU32TwoArgs Args = ReducerEvent.Reducer.GetAsInsertPkU32Two(); - UInsertPkU32TwoReducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkU32Two(Context, Reducer); + Reducers->InvokeInsertPkU32TwoWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_u64")) { FInsertPkU64Args Args = ReducerEvent.Reducer.GetAsInsertPkU64(); - UInsertPkU64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkU64(Context, Reducer); + Reducers->InvokeInsertPkU64WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_u8")) { FInsertPkU8Args Args = ReducerEvent.Reducer.GetAsInsertPkU8(); - UInsertPkU8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkU8(Context, Reducer); + Reducers->InvokeInsertPkU8WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_pk_uuid")) { FInsertPkUuidArgs Args = ReducerEvent.Reducer.GetAsInsertPkUuid(); - UInsertPkUuidReducer* Reducer = NewObject(); - Reducer->U = Args.U; - Reducer->Data = Args.Data; - Reducers->InvokeInsertPkUuid(Context, Reducer); + Reducers->InvokeInsertPkUuidWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_primitives_as_strings")) { FInsertPrimitivesAsStringsArgs Args = ReducerEvent.Reducer.GetAsInsertPrimitivesAsStrings(); - UInsertPrimitivesAsStringsReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeInsertPrimitivesAsStrings(Context, Reducer); + Reducers->InvokeInsertPrimitivesAsStringsWithArgs(Context, Args); + return; + } + if (ReducerName == TEXT("insert_result_every_primitive_struct_string")) + { + FInsertResultEveryPrimitiveStructStringArgs Args = ReducerEvent.Reducer.GetAsInsertResultEveryPrimitiveStructString(); + Reducers->InvokeInsertResultEveryPrimitiveStructStringWithArgs(Context, Args); + return; + } + if (ReducerName == TEXT("insert_result_i32_string")) + { + FInsertResultI32StringArgs Args = ReducerEvent.Reducer.GetAsInsertResultI32String(); + Reducers->InvokeInsertResultI32StringWithArgs(Context, Args); + return; + } + if (ReducerName == TEXT("insert_result_identity_string")) + { + FInsertResultIdentityStringArgs Args = ReducerEvent.Reducer.GetAsInsertResultIdentityString(); + Reducers->InvokeInsertResultIdentityStringWithArgs(Context, Args); + return; + } + if (ReducerName == TEXT("insert_result_simple_enum_i32")) + { + FInsertResultSimpleEnumI32Args Args = ReducerEvent.Reducer.GetAsInsertResultSimpleEnumI32(); + Reducers->InvokeInsertResultSimpleEnumI32WithArgs(Context, Args); + return; + } + if (ReducerName == TEXT("insert_result_string_i32")) + { + FInsertResultStringI32Args Args = ReducerEvent.Reducer.GetAsInsertResultStringI32(); + Reducers->InvokeInsertResultStringI32WithArgs(Context, Args); + return; + } + if (ReducerName == TEXT("insert_result_vec_i32_string")) + { + FInsertResultVecI32StringArgs Args = ReducerEvent.Reducer.GetAsInsertResultVecI32String(); + Reducers->InvokeInsertResultVecI32StringWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_table_holds_table")) { FInsertTableHoldsTableArgs Args = ReducerEvent.Reducer.GetAsInsertTableHoldsTable(); - UInsertTableHoldsTableReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducer->B = Args.B; - Reducers->InvokeInsertTableHoldsTable(Context, Reducer); + Reducers->InvokeInsertTableHoldsTableWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_bool")) { FInsertUniqueBoolArgs Args = ReducerEvent.Reducer.GetAsInsertUniqueBool(); - UInsertUniqueBoolReducer* Reducer = NewObject(); - Reducer->B = Args.B; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueBool(Context, Reducer); + Reducers->InvokeInsertUniqueBoolWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_connection_id")) { FInsertUniqueConnectionIdArgs Args = ReducerEvent.Reducer.GetAsInsertUniqueConnectionId(); - UInsertUniqueConnectionIdReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueConnectionId(Context, Reducer); + Reducers->InvokeInsertUniqueConnectionIdWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_i128")) { FInsertUniqueI128Args Args = ReducerEvent.Reducer.GetAsInsertUniqueI128(); - UInsertUniqueI128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueI128(Context, Reducer); + Reducers->InvokeInsertUniqueI128WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_i16")) { FInsertUniqueI16Args Args = ReducerEvent.Reducer.GetAsInsertUniqueI16(); - UInsertUniqueI16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueI16(Context, Reducer); + Reducers->InvokeInsertUniqueI16WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_i256")) { FInsertUniqueI256Args Args = ReducerEvent.Reducer.GetAsInsertUniqueI256(); - UInsertUniqueI256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueI256(Context, Reducer); + Reducers->InvokeInsertUniqueI256WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_i32")) { FInsertUniqueI32Args Args = ReducerEvent.Reducer.GetAsInsertUniqueI32(); - UInsertUniqueI32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueI32(Context, Reducer); + Reducers->InvokeInsertUniqueI32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_i64")) { FInsertUniqueI64Args Args = ReducerEvent.Reducer.GetAsInsertUniqueI64(); - UInsertUniqueI64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueI64(Context, Reducer); + Reducers->InvokeInsertUniqueI64WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_i8")) { FInsertUniqueI8Args Args = ReducerEvent.Reducer.GetAsInsertUniqueI8(); - UInsertUniqueI8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueI8(Context, Reducer); + Reducers->InvokeInsertUniqueI8WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_identity")) { FInsertUniqueIdentityArgs Args = ReducerEvent.Reducer.GetAsInsertUniqueIdentity(); - UInsertUniqueIdentityReducer* Reducer = NewObject(); - Reducer->I = Args.I; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueIdentity(Context, Reducer); + Reducers->InvokeInsertUniqueIdentityWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_string")) { FInsertUniqueStringArgs Args = ReducerEvent.Reducer.GetAsInsertUniqueString(); - UInsertUniqueStringReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueString(Context, Reducer); + Reducers->InvokeInsertUniqueStringWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_u128")) { FInsertUniqueU128Args Args = ReducerEvent.Reducer.GetAsInsertUniqueU128(); - UInsertUniqueU128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueU128(Context, Reducer); + Reducers->InvokeInsertUniqueU128WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_u16")) { FInsertUniqueU16Args Args = ReducerEvent.Reducer.GetAsInsertUniqueU16(); - UInsertUniqueU16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueU16(Context, Reducer); + Reducers->InvokeInsertUniqueU16WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_u256")) { FInsertUniqueU256Args Args = ReducerEvent.Reducer.GetAsInsertUniqueU256(); - UInsertUniqueU256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueU256(Context, Reducer); + Reducers->InvokeInsertUniqueU256WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_u32")) { FInsertUniqueU32Args Args = ReducerEvent.Reducer.GetAsInsertUniqueU32(); - UInsertUniqueU32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueU32(Context, Reducer); + Reducers->InvokeInsertUniqueU32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_u32_update_pk_u32")) { FInsertUniqueU32UpdatePkU32Args Args = ReducerEvent.Reducer.GetAsInsertUniqueU32UpdatePkU32(); - UInsertUniqueU32UpdatePkU32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->DUnique = Args.DUnique; - Reducer->DPk = Args.DPk; - Reducers->InvokeInsertUniqueU32UpdatePkU32(Context, Reducer); + Reducers->InvokeInsertUniqueU32UpdatePkU32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_u64")) { FInsertUniqueU64Args Args = ReducerEvent.Reducer.GetAsInsertUniqueU64(); - UInsertUniqueU64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueU64(Context, Reducer); + Reducers->InvokeInsertUniqueU64WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_u8")) { FInsertUniqueU8Args Args = ReducerEvent.Reducer.GetAsInsertUniqueU8(); - UInsertUniqueU8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueU8(Context, Reducer); + Reducers->InvokeInsertUniqueU8WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_unique_uuid")) { FInsertUniqueUuidArgs Args = ReducerEvent.Reducer.GetAsInsertUniqueUuid(); - UInsertUniqueUuidReducer* Reducer = NewObject(); - Reducer->U = Args.U; - Reducer->Data = Args.Data; - Reducers->InvokeInsertUniqueUuid(Context, Reducer); + Reducers->InvokeInsertUniqueUuidWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_user")) { FInsertUserArgs Args = ReducerEvent.Reducer.GetAsInsertUser(); - UInsertUserReducer* Reducer = NewObject(); - Reducer->Name = Args.Name; - Reducer->Identity = Args.Identity; - Reducers->InvokeInsertUser(Context, Reducer); + Reducers->InvokeInsertUserWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_bool")) { FInsertVecBoolArgs Args = ReducerEvent.Reducer.GetAsInsertVecBool(); - UInsertVecBoolReducer* Reducer = NewObject(); - Reducer->B = Args.B; - Reducers->InvokeInsertVecBool(Context, Reducer); + Reducers->InvokeInsertVecBoolWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_byte_struct")) { FInsertVecByteStructArgs Args = ReducerEvent.Reducer.GetAsInsertVecByteStruct(); - UInsertVecByteStructReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeInsertVecByteStruct(Context, Reducer); + Reducers->InvokeInsertVecByteStructWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_connection_id")) { FInsertVecConnectionIdArgs Args = ReducerEvent.Reducer.GetAsInsertVecConnectionId(); - UInsertVecConnectionIdReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducers->InvokeInsertVecConnectionId(Context, Reducer); + Reducers->InvokeInsertVecConnectionIdWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_enum_with_payload")) { FInsertVecEnumWithPayloadArgs Args = ReducerEvent.Reducer.GetAsInsertVecEnumWithPayload(); - UInsertVecEnumWithPayloadReducer* Reducer = NewObject(); - Reducer->E = Args.E; - Reducers->InvokeInsertVecEnumWithPayload(Context, Reducer); + Reducers->InvokeInsertVecEnumWithPayloadWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_every_primitive_struct")) { FInsertVecEveryPrimitiveStructArgs Args = ReducerEvent.Reducer.GetAsInsertVecEveryPrimitiveStruct(); - UInsertVecEveryPrimitiveStructReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeInsertVecEveryPrimitiveStruct(Context, Reducer); + Reducers->InvokeInsertVecEveryPrimitiveStructWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_every_vec_struct")) { FInsertVecEveryVecStructArgs Args = ReducerEvent.Reducer.GetAsInsertVecEveryVecStruct(); - UInsertVecEveryVecStructReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeInsertVecEveryVecStruct(Context, Reducer); + Reducers->InvokeInsertVecEveryVecStructWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_f32")) { FInsertVecF32Args Args = ReducerEvent.Reducer.GetAsInsertVecF32(); - UInsertVecF32Reducer* Reducer = NewObject(); - Reducer->F = Args.F; - Reducers->InvokeInsertVecF32(Context, Reducer); + Reducers->InvokeInsertVecF32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_f64")) { FInsertVecF64Args Args = ReducerEvent.Reducer.GetAsInsertVecF64(); - UInsertVecF64Reducer* Reducer = NewObject(); - Reducer->F = Args.F; - Reducers->InvokeInsertVecF64(Context, Reducer); + Reducers->InvokeInsertVecF64WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_i128")) { FInsertVecI128Args Args = ReducerEvent.Reducer.GetAsInsertVecI128(); - UInsertVecI128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertVecI128(Context, Reducer); + Reducers->InvokeInsertVecI128WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_i16")) { FInsertVecI16Args Args = ReducerEvent.Reducer.GetAsInsertVecI16(); - UInsertVecI16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertVecI16(Context, Reducer); + Reducers->InvokeInsertVecI16WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_i256")) { FInsertVecI256Args Args = ReducerEvent.Reducer.GetAsInsertVecI256(); - UInsertVecI256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertVecI256(Context, Reducer); + Reducers->InvokeInsertVecI256WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_i32")) { FInsertVecI32Args Args = ReducerEvent.Reducer.GetAsInsertVecI32(); - UInsertVecI32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertVecI32(Context, Reducer); + Reducers->InvokeInsertVecI32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_i64")) { FInsertVecI64Args Args = ReducerEvent.Reducer.GetAsInsertVecI64(); - UInsertVecI64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertVecI64(Context, Reducer); + Reducers->InvokeInsertVecI64WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_i8")) { FInsertVecI8Args Args = ReducerEvent.Reducer.GetAsInsertVecI8(); - UInsertVecI8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertVecI8(Context, Reducer); + Reducers->InvokeInsertVecI8WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_identity")) { FInsertVecIdentityArgs Args = ReducerEvent.Reducer.GetAsInsertVecIdentity(); - UInsertVecIdentityReducer* Reducer = NewObject(); - Reducer->I = Args.I; - Reducers->InvokeInsertVecIdentity(Context, Reducer); + Reducers->InvokeInsertVecIdentityWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_simple_enum")) { FInsertVecSimpleEnumArgs Args = ReducerEvent.Reducer.GetAsInsertVecSimpleEnum(); - UInsertVecSimpleEnumReducer* Reducer = NewObject(); - Reducer->E = Args.E; - Reducers->InvokeInsertVecSimpleEnum(Context, Reducer); + Reducers->InvokeInsertVecSimpleEnumWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_string")) { FInsertVecStringArgs Args = ReducerEvent.Reducer.GetAsInsertVecString(); - UInsertVecStringReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeInsertVecString(Context, Reducer); + Reducers->InvokeInsertVecStringWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_timestamp")) { FInsertVecTimestampArgs Args = ReducerEvent.Reducer.GetAsInsertVecTimestamp(); - UInsertVecTimestampReducer* Reducer = NewObject(); - Reducer->T = Args.T; - Reducers->InvokeInsertVecTimestamp(Context, Reducer); + Reducers->InvokeInsertVecTimestampWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_u128")) { FInsertVecU128Args Args = ReducerEvent.Reducer.GetAsInsertVecU128(); - UInsertVecU128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertVecU128(Context, Reducer); + Reducers->InvokeInsertVecU128WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_u16")) { FInsertVecU16Args Args = ReducerEvent.Reducer.GetAsInsertVecU16(); - UInsertVecU16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertVecU16(Context, Reducer); + Reducers->InvokeInsertVecU16WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_u256")) { FInsertVecU256Args Args = ReducerEvent.Reducer.GetAsInsertVecU256(); - UInsertVecU256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertVecU256(Context, Reducer); + Reducers->InvokeInsertVecU256WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_u32")) { FInsertVecU32Args Args = ReducerEvent.Reducer.GetAsInsertVecU32(); - UInsertVecU32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertVecU32(Context, Reducer); + Reducers->InvokeInsertVecU32WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_u64")) { FInsertVecU64Args Args = ReducerEvent.Reducer.GetAsInsertVecU64(); - UInsertVecU64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertVecU64(Context, Reducer); + Reducers->InvokeInsertVecU64WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_u8")) { FInsertVecU8Args Args = ReducerEvent.Reducer.GetAsInsertVecU8(); - UInsertVecU8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducers->InvokeInsertVecU8(Context, Reducer); + Reducers->InvokeInsertVecU8WithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_unit_struct")) { FInsertVecUnitStructArgs Args = ReducerEvent.Reducer.GetAsInsertVecUnitStruct(); - UInsertVecUnitStructReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducers->InvokeInsertVecUnitStruct(Context, Reducer); + Reducers->InvokeInsertVecUnitStructWithArgs(Context, Args); return; } if (ReducerName == TEXT("insert_vec_uuid")) { FInsertVecUuidArgs Args = ReducerEvent.Reducer.GetAsInsertVecUuid(); - UInsertVecUuidReducer* Reducer = NewObject(); - Reducer->U = Args.U; - Reducers->InvokeInsertVecUuid(Context, Reducer); + Reducers->InvokeInsertVecUuidWithArgs(Context, Args); return; } if (ReducerName == TEXT("no_op_succeeds")) { FNoOpSucceedsArgs Args = ReducerEvent.Reducer.GetAsNoOpSucceeds(); - UNoOpSucceedsReducer* Reducer = NewObject(); - Reducers->InvokeNoOpSucceeds(Context, Reducer); + Reducers->InvokeNoOpSucceedsWithArgs(Context, Args); return; } if (ReducerName == TEXT("send_scheduled_message")) { FSendScheduledMessageArgs Args = ReducerEvent.Reducer.GetAsSendScheduledMessage(); - USendScheduledMessageReducer* Reducer = NewObject(); - Reducer->Arg = Args.Arg; - Reducers->InvokeSendScheduledMessage(Context, Reducer); + Reducers->InvokeSendScheduledMessageWithArgs(Context, Args); return; } if (ReducerName == TEXT("sorted_uuids_insert")) { FSortedUuidsInsertArgs Args = ReducerEvent.Reducer.GetAsSortedUuidsInsert(); - USortedUuidsInsertReducer* Reducer = NewObject(); - Reducers->InvokeSortedUuidsInsert(Context, Reducer); + Reducers->InvokeSortedUuidsInsertWithArgs(Context, Args); return; } if (ReducerName == TEXT("update_indexed_simple_enum")) { FUpdateIndexedSimpleEnumArgs Args = ReducerEvent.Reducer.GetAsUpdateIndexedSimpleEnum(); - UUpdateIndexedSimpleEnumReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducer->B = Args.B; - Reducers->InvokeUpdateIndexedSimpleEnum(Context, Reducer); + Reducers->InvokeUpdateIndexedSimpleEnumWithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_bool")) { FUpdatePkBoolArgs Args = ReducerEvent.Reducer.GetAsUpdatePkBool(); - UUpdatePkBoolReducer* Reducer = NewObject(); - Reducer->B = Args.B; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkBool(Context, Reducer); + Reducers->InvokeUpdatePkBoolWithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_connection_id")) { FUpdatePkConnectionIdArgs Args = ReducerEvent.Reducer.GetAsUpdatePkConnectionId(); - UUpdatePkConnectionIdReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkConnectionId(Context, Reducer); + Reducers->InvokeUpdatePkConnectionIdWithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_i128")) { FUpdatePkI128Args Args = ReducerEvent.Reducer.GetAsUpdatePkI128(); - UUpdatePkI128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkI128(Context, Reducer); + Reducers->InvokeUpdatePkI128WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_i16")) { FUpdatePkI16Args Args = ReducerEvent.Reducer.GetAsUpdatePkI16(); - UUpdatePkI16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkI16(Context, Reducer); + Reducers->InvokeUpdatePkI16WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_i256")) { FUpdatePkI256Args Args = ReducerEvent.Reducer.GetAsUpdatePkI256(); - UUpdatePkI256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkI256(Context, Reducer); + Reducers->InvokeUpdatePkI256WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_i32")) { FUpdatePkI32Args Args = ReducerEvent.Reducer.GetAsUpdatePkI32(); - UUpdatePkI32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkI32(Context, Reducer); + Reducers->InvokeUpdatePkI32WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_i64")) { FUpdatePkI64Args Args = ReducerEvent.Reducer.GetAsUpdatePkI64(); - UUpdatePkI64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkI64(Context, Reducer); + Reducers->InvokeUpdatePkI64WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_i8")) { FUpdatePkI8Args Args = ReducerEvent.Reducer.GetAsUpdatePkI8(); - UUpdatePkI8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkI8(Context, Reducer); + Reducers->InvokeUpdatePkI8WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_identity")) { FUpdatePkIdentityArgs Args = ReducerEvent.Reducer.GetAsUpdatePkIdentity(); - UUpdatePkIdentityReducer* Reducer = NewObject(); - Reducer->I = Args.I; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkIdentity(Context, Reducer); + Reducers->InvokeUpdatePkIdentityWithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_simple_enum")) { FUpdatePkSimpleEnumArgs Args = ReducerEvent.Reducer.GetAsUpdatePkSimpleEnum(); - UUpdatePkSimpleEnumReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkSimpleEnum(Context, Reducer); + Reducers->InvokeUpdatePkSimpleEnumWithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_string")) { FUpdatePkStringArgs Args = ReducerEvent.Reducer.GetAsUpdatePkString(); - UUpdatePkStringReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkString(Context, Reducer); + Reducers->InvokeUpdatePkStringWithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_u128")) { FUpdatePkU128Args Args = ReducerEvent.Reducer.GetAsUpdatePkU128(); - UUpdatePkU128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkU128(Context, Reducer); + Reducers->InvokeUpdatePkU128WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_u16")) { FUpdatePkU16Args Args = ReducerEvent.Reducer.GetAsUpdatePkU16(); - UUpdatePkU16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkU16(Context, Reducer); + Reducers->InvokeUpdatePkU16WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_u256")) { FUpdatePkU256Args Args = ReducerEvent.Reducer.GetAsUpdatePkU256(); - UUpdatePkU256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkU256(Context, Reducer); + Reducers->InvokeUpdatePkU256WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_u32")) { FUpdatePkU32Args Args = ReducerEvent.Reducer.GetAsUpdatePkU32(); - UUpdatePkU32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkU32(Context, Reducer); + Reducers->InvokeUpdatePkU32WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_u32_two")) { FUpdatePkU32TwoArgs Args = ReducerEvent.Reducer.GetAsUpdatePkU32Two(); - UUpdatePkU32TwoReducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkU32Two(Context, Reducer); + Reducers->InvokeUpdatePkU32TwoWithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_u64")) { FUpdatePkU64Args Args = ReducerEvent.Reducer.GetAsUpdatePkU64(); - UUpdatePkU64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkU64(Context, Reducer); + Reducers->InvokeUpdatePkU64WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_u8")) { FUpdatePkU8Args Args = ReducerEvent.Reducer.GetAsUpdatePkU8(); - UUpdatePkU8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkU8(Context, Reducer); + Reducers->InvokeUpdatePkU8WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_pk_uuid")) { FUpdatePkUuidArgs Args = ReducerEvent.Reducer.GetAsUpdatePkUuid(); - UUpdatePkUuidReducer* Reducer = NewObject(); - Reducer->U = Args.U; - Reducer->Data = Args.Data; - Reducers->InvokeUpdatePkUuid(Context, Reducer); + Reducers->InvokeUpdatePkUuidWithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_bool")) { FUpdateUniqueBoolArgs Args = ReducerEvent.Reducer.GetAsUpdateUniqueBool(); - UUpdateUniqueBoolReducer* Reducer = NewObject(); - Reducer->B = Args.B; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueBool(Context, Reducer); + Reducers->InvokeUpdateUniqueBoolWithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_connection_id")) { FUpdateUniqueConnectionIdArgs Args = ReducerEvent.Reducer.GetAsUpdateUniqueConnectionId(); - UUpdateUniqueConnectionIdReducer* Reducer = NewObject(); - Reducer->A = Args.A; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueConnectionId(Context, Reducer); + Reducers->InvokeUpdateUniqueConnectionIdWithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_i128")) { FUpdateUniqueI128Args Args = ReducerEvent.Reducer.GetAsUpdateUniqueI128(); - UUpdateUniqueI128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueI128(Context, Reducer); + Reducers->InvokeUpdateUniqueI128WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_i16")) { FUpdateUniqueI16Args Args = ReducerEvent.Reducer.GetAsUpdateUniqueI16(); - UUpdateUniqueI16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueI16(Context, Reducer); + Reducers->InvokeUpdateUniqueI16WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_i256")) { FUpdateUniqueI256Args Args = ReducerEvent.Reducer.GetAsUpdateUniqueI256(); - UUpdateUniqueI256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueI256(Context, Reducer); + Reducers->InvokeUpdateUniqueI256WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_i32")) { FUpdateUniqueI32Args Args = ReducerEvent.Reducer.GetAsUpdateUniqueI32(); - UUpdateUniqueI32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueI32(Context, Reducer); + Reducers->InvokeUpdateUniqueI32WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_i64")) { FUpdateUniqueI64Args Args = ReducerEvent.Reducer.GetAsUpdateUniqueI64(); - UUpdateUniqueI64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueI64(Context, Reducer); + Reducers->InvokeUpdateUniqueI64WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_i8")) { FUpdateUniqueI8Args Args = ReducerEvent.Reducer.GetAsUpdateUniqueI8(); - UUpdateUniqueI8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueI8(Context, Reducer); + Reducers->InvokeUpdateUniqueI8WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_identity")) { FUpdateUniqueIdentityArgs Args = ReducerEvent.Reducer.GetAsUpdateUniqueIdentity(); - UUpdateUniqueIdentityReducer* Reducer = NewObject(); - Reducer->I = Args.I; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueIdentity(Context, Reducer); + Reducers->InvokeUpdateUniqueIdentityWithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_string")) { FUpdateUniqueStringArgs Args = ReducerEvent.Reducer.GetAsUpdateUniqueString(); - UUpdateUniqueStringReducer* Reducer = NewObject(); - Reducer->S = Args.S; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueString(Context, Reducer); + Reducers->InvokeUpdateUniqueStringWithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_u128")) { FUpdateUniqueU128Args Args = ReducerEvent.Reducer.GetAsUpdateUniqueU128(); - UUpdateUniqueU128Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueU128(Context, Reducer); + Reducers->InvokeUpdateUniqueU128WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_u16")) { FUpdateUniqueU16Args Args = ReducerEvent.Reducer.GetAsUpdateUniqueU16(); - UUpdateUniqueU16Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueU16(Context, Reducer); + Reducers->InvokeUpdateUniqueU16WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_u256")) { FUpdateUniqueU256Args Args = ReducerEvent.Reducer.GetAsUpdateUniqueU256(); - UUpdateUniqueU256Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueU256(Context, Reducer); + Reducers->InvokeUpdateUniqueU256WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_u32")) { FUpdateUniqueU32Args Args = ReducerEvent.Reducer.GetAsUpdateUniqueU32(); - UUpdateUniqueU32Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueU32(Context, Reducer); + Reducers->InvokeUpdateUniqueU32WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_u64")) { FUpdateUniqueU64Args Args = ReducerEvent.Reducer.GetAsUpdateUniqueU64(); - UUpdateUniqueU64Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueU64(Context, Reducer); + Reducers->InvokeUpdateUniqueU64WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_u8")) { FUpdateUniqueU8Args Args = ReducerEvent.Reducer.GetAsUpdateUniqueU8(); - UUpdateUniqueU8Reducer* Reducer = NewObject(); - Reducer->N = Args.N; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueU8(Context, Reducer); + Reducers->InvokeUpdateUniqueU8WithArgs(Context, Args); return; } if (ReducerName == TEXT("update_unique_uuid")) { FUpdateUniqueUuidArgs Args = ReducerEvent.Reducer.GetAsUpdateUniqueUuid(); - UUpdateUniqueUuidReducer* Reducer = NewObject(); - Reducer->U = Args.U; - Reducer->Data = Args.Data; - Reducers->InvokeUpdateUniqueUuid(Context, Reducer); + Reducers->InvokeUpdateUniqueUuidWithArgs(Context, Args); return; } diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultEveryPrimitiveStructStringTable.g.cpp b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultEveryPrimitiveStructStringTable.g.cpp new file mode 100644 index 00000000000..736e17ffa40 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultEveryPrimitiveStructStringTable.g.cpp @@ -0,0 +1,35 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#include "ModuleBindings/Tables/ResultEveryPrimitiveStructStringTable.g.h" +#include "DBCache/UniqueIndex.h" +#include "DBCache/BTreeUniqueIndex.h" +#include "DBCache/ClientCache.h" +#include "DBCache/TableCache.h" + +void UResultEveryPrimitiveStructStringTable::PostInitialize() +{ + /** Client cache init and setting up indexes*/ + Data = MakeShared>(); + + TSharedPtr> ResultEveryPrimitiveStructStringTable = Data->GetOrAdd(TableName); + + /***/ +} + +FTableAppliedDiff UResultEveryPrimitiveStructStringTable::Update(TArray> InsertsRef, TArray> DeletesRef) +{ + FTableAppliedDiff Diff = BaseUpdate(InsertsRef, DeletesRef, Data, TableName); + + return Diff; +} + +int32 UResultEveryPrimitiveStructStringTable::Count() const +{ + return GetRowCountFromTable(Data, TableName); +} + +TArray UResultEveryPrimitiveStructStringTable::Iter() const +{ + return GetAllRowsFromTable(Data, TableName); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultI32StringTable.g.cpp b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultI32StringTable.g.cpp new file mode 100644 index 00000000000..feedde59d25 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultI32StringTable.g.cpp @@ -0,0 +1,35 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#include "ModuleBindings/Tables/ResultI32StringTable.g.h" +#include "DBCache/UniqueIndex.h" +#include "DBCache/BTreeUniqueIndex.h" +#include "DBCache/ClientCache.h" +#include "DBCache/TableCache.h" + +void UResultI32StringTable::PostInitialize() +{ + /** Client cache init and setting up indexes*/ + Data = MakeShared>(); + + TSharedPtr> ResultI32StringTable = Data->GetOrAdd(TableName); + + /***/ +} + +FTableAppliedDiff UResultI32StringTable::Update(TArray> InsertsRef, TArray> DeletesRef) +{ + FTableAppliedDiff Diff = BaseUpdate(InsertsRef, DeletesRef, Data, TableName); + + return Diff; +} + +int32 UResultI32StringTable::Count() const +{ + return GetRowCountFromTable(Data, TableName); +} + +TArray UResultI32StringTable::Iter() const +{ + return GetAllRowsFromTable(Data, TableName); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultIdentityStringTable.g.cpp b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultIdentityStringTable.g.cpp new file mode 100644 index 00000000000..ea541f333f7 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultIdentityStringTable.g.cpp @@ -0,0 +1,35 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#include "ModuleBindings/Tables/ResultIdentityStringTable.g.h" +#include "DBCache/UniqueIndex.h" +#include "DBCache/BTreeUniqueIndex.h" +#include "DBCache/ClientCache.h" +#include "DBCache/TableCache.h" + +void UResultIdentityStringTable::PostInitialize() +{ + /** Client cache init and setting up indexes*/ + Data = MakeShared>(); + + TSharedPtr> ResultIdentityStringTable = Data->GetOrAdd(TableName); + + /***/ +} + +FTableAppliedDiff UResultIdentityStringTable::Update(TArray> InsertsRef, TArray> DeletesRef) +{ + FTableAppliedDiff Diff = BaseUpdate(InsertsRef, DeletesRef, Data, TableName); + + return Diff; +} + +int32 UResultIdentityStringTable::Count() const +{ + return GetRowCountFromTable(Data, TableName); +} + +TArray UResultIdentityStringTable::Iter() const +{ + return GetAllRowsFromTable(Data, TableName); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultSimpleEnumI32Table.g.cpp b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultSimpleEnumI32Table.g.cpp new file mode 100644 index 00000000000..230ce4f65c6 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultSimpleEnumI32Table.g.cpp @@ -0,0 +1,35 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#include "ModuleBindings/Tables/ResultSimpleEnumI32Table.g.h" +#include "DBCache/UniqueIndex.h" +#include "DBCache/BTreeUniqueIndex.h" +#include "DBCache/ClientCache.h" +#include "DBCache/TableCache.h" + +void UResultSimpleEnumI32Table::PostInitialize() +{ + /** Client cache init and setting up indexes*/ + Data = MakeShared>(); + + TSharedPtr> ResultSimpleEnumI32Table = Data->GetOrAdd(TableName); + + /***/ +} + +FTableAppliedDiff UResultSimpleEnumI32Table::Update(TArray> InsertsRef, TArray> DeletesRef) +{ + FTableAppliedDiff Diff = BaseUpdate(InsertsRef, DeletesRef, Data, TableName); + + return Diff; +} + +int32 UResultSimpleEnumI32Table::Count() const +{ + return GetRowCountFromTable(Data, TableName); +} + +TArray UResultSimpleEnumI32Table::Iter() const +{ + return GetAllRowsFromTable(Data, TableName); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultStringI32Table.g.cpp b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultStringI32Table.g.cpp new file mode 100644 index 00000000000..a0c29a63b61 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultStringI32Table.g.cpp @@ -0,0 +1,35 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#include "ModuleBindings/Tables/ResultStringI32Table.g.h" +#include "DBCache/UniqueIndex.h" +#include "DBCache/BTreeUniqueIndex.h" +#include "DBCache/ClientCache.h" +#include "DBCache/TableCache.h" + +void UResultStringI32Table::PostInitialize() +{ + /** Client cache init and setting up indexes*/ + Data = MakeShared>(); + + TSharedPtr> ResultStringI32Table = Data->GetOrAdd(TableName); + + /***/ +} + +FTableAppliedDiff UResultStringI32Table::Update(TArray> InsertsRef, TArray> DeletesRef) +{ + FTableAppliedDiff Diff = BaseUpdate(InsertsRef, DeletesRef, Data, TableName); + + return Diff; +} + +int32 UResultStringI32Table::Count() const +{ + return GetRowCountFromTable(Data, TableName); +} + +TArray UResultStringI32Table::Iter() const +{ + return GetAllRowsFromTable(Data, TableName); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultVecI32StringTable.g.cpp b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultVecI32StringTable.g.cpp new file mode 100644 index 00000000000..7a7c09add46 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Private/ModuleBindings/Tables/ResultVecI32StringTable.g.cpp @@ -0,0 +1,35 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#include "ModuleBindings/Tables/ResultVecI32StringTable.g.h" +#include "DBCache/UniqueIndex.h" +#include "DBCache/BTreeUniqueIndex.h" +#include "DBCache/ClientCache.h" +#include "DBCache/TableCache.h" + +void UResultVecI32StringTable::PostInitialize() +{ + /** Client cache init and setting up indexes*/ + Data = MakeShared>(); + + TSharedPtr> ResultVecI32StringTable = Data->GetOrAdd(TableName); + + /***/ +} + +FTableAppliedDiff UResultVecI32StringTable::Update(TArray> InsertsRef, TArray> DeletesRef) +{ + FTableAppliedDiff Diff = BaseUpdate(InsertsRef, DeletesRef, Data, TableName); + + return Diff; +} + +int32 UResultVecI32StringTable::Count() const +{ + return GetRowCountFromTable(Data, TableName); +} + +TArray UResultVecI32StringTable::Iter() const +{ + return GetAllRowsFromTable(Data, TableName); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Private/Tests/SpacetimeFullClientTests.cpp b/sdks/unreal/tests/TestClient/Source/TestClient/Private/Tests/SpacetimeFullClientTests.cpp index d7880961427..2f9859605d5 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Private/Tests/SpacetimeFullClientTests.cpp +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Private/Tests/SpacetimeFullClientTests.cpp @@ -16,6 +16,12 @@ #include "Tests/PrimitiveHandlerList.def" #include "Connection/Credentials.h" +#include "ModuleBindings/Tables/ResultEveryPrimitiveStructStringTable.g.h" +#include "ModuleBindings/Tables/ResultI32StringTable.g.h" +#include "ModuleBindings/Tables/ResultIdentityStringTable.g.h" +#include "ModuleBindings/Tables/ResultSimpleEnumI32Table.g.h" +#include "ModuleBindings/Tables/ResultStringI32Table.g.h" +#include "ModuleBindings/Tables/ResultVecI32StringTable.g.h" #include "ModuleBindings/Tables/OneUuidTable.g.h" // #include "HAL/IPlatformFile.h" @@ -1078,6 +1084,108 @@ bool FInsertOptionNoneTest::RunTest(const FString &Parameters) return true; } +bool FInsertResultOkTest::RunTest(const FString &Parameters) +{ + TestName = "InsertResultOk"; + + if (!ValidateParameterConfig(this)) + { + return false; + } + + // Create and register a test counter to track completion. + UResultActionsHandler *Handler = CreateTestHandler(); + Handler->Counter->Register(TEXT("InsertResultI32String")); + Handler->Counter->Register(TEXT("InsertResultStringI32")); + Handler->Counter->Register(TEXT("InsertResultIdentityString")); + Handler->Counter->Register(TEXT("InsertResultSimpleEnumI32")); + Handler->Counter->Register(TEXT("InsertResultEveryPrimitiveStructString")); + Handler->Counter->Register(TEXT("InsertResultVecI32String")); + + UDbConnection *Connection = ConnectThen(Handler->Counter, TestName, [this, Handler](UDbConnection *Conn) + { + // Subscribe to the insert event for each table. + Conn->Db->ResultI32String->OnInsert.AddDynamic(Handler, &UResultActionsHandler::OnInsertResultI32String); + Conn->Db->ResultStringI32->OnInsert.AddDynamic(Handler, &UResultActionsHandler::OnInsertResultStringI32); + Conn->Db->ResultIdentityString->OnInsert.AddDynamic(Handler, &UResultActionsHandler::OnInsertResultIdentityString); + Conn->Db->ResultSimpleEnumI32->OnInsert.AddDynamic(Handler, &UResultActionsHandler::OnInsertResultSimpleEnumI32); + Conn->Db->ResultEveryPrimitiveStructString->OnInsert.AddDynamic(Handler, &UResultActionsHandler::OnInsertResultEveryPrimitiveStructString); + Conn->Db->ResultVecI32String->OnInsert.AddDynamic(Handler, &UResultActionsHandler::OnInsertResultVecI32String); + + SubscribeAllThen(Conn, [this, Handler, Conn](FSubscriptionEventContext Ctx) + { + if (!AssertAllTablesEmpty(this, Conn->Db)) + { + Handler->Counter->Abort(); + return; + } + + // Set expected Ok values + Handler->ExpectedResultI32StringType = FTestClientResultInt32String::Ok(42); + Handler->ExpectedResultStringI32Type = FTestClientResultStringInt32::Ok(TEXT("Testing String")); + + FSpacetimeDBIdentity Identity; + Ctx.TryGetIdentity(Identity); + Handler->ExpectedResultIdentityStringType = FTestClientResultIdentityString::Ok(Identity); + + Handler->ExpectedResultSimpleEnumI32Type = FTestClientResultSimpleEnumInt32::Ok(ESimpleEnumType::One); + FSpacetimeDBUInt128 UInt128 = { 0, 4 }; + FSpacetimeDBUInt256 UInt256 = { FSpacetimeDBUInt128(0, 0), FSpacetimeDBUInt128(0, 5) }; + + FSpacetimeDBInt128 Int128 = { 0, static_cast(-5) }; + FSpacetimeDBInt256 Int256 = { FSpacetimeDBUInt128(0, 0), FSpacetimeDBUInt128(0, static_cast(-5)) }; + + FSpacetimeDBUInt128 UInt128p = { 0x0102030405060708, 0x090a0b0c0d0e0f10 }; + FSpacetimeDBUInt256 UInt256p = { FSpacetimeDBUInt128(0x0102030405060708, 0x090a0b0c0d0e0f10), FSpacetimeDBUInt128(0x1112131415161718, 0x191a1b1c1d1e1f20)}; + + FSpacetimeDBInt128 Int128p = { static_cast(-0x0102030405060708), static_cast(-0x090a0b0c0d0e0f10)}; + FSpacetimeDBInt256 Int256p = { FSpacetimeDBUInt128(static_cast(-0x0102030405060708), static_cast(-0x090a0b0c0d0e0f10)), + FSpacetimeDBUInt128(static_cast(-0x1112131415161718), static_cast(-0x191a1b1c1d1e1f20)) }; + + FEveryPrimitiveStructType EveryPrimitiveStructType; + EveryPrimitiveStructType.A = { 0x01 }; + EveryPrimitiveStructType.B = { 0x0102 }; + EveryPrimitiveStructType.C = { 0x01020304 }; + EveryPrimitiveStructType.D = { 0x0102030405060708 }; + EveryPrimitiveStructType.E = { UInt128p }; + EveryPrimitiveStructType.F = { UInt256p }; + EveryPrimitiveStructType.G = { -0x01 }; + EveryPrimitiveStructType.H = { -0x0102 }; + EveryPrimitiveStructType.I = { -0x01020304 }; + EveryPrimitiveStructType.J = { -0x0102030405060708 }; + EveryPrimitiveStructType.K = { Int128p }; + EveryPrimitiveStructType.L = { Int256p }; + EveryPrimitiveStructType.M = { false }; + EveryPrimitiveStructType.N = { 1.0 }; + EveryPrimitiveStructType.O = { -1.0 }; + EveryPrimitiveStructType.P = { "string" }; + EveryPrimitiveStructType.Q = { FSpacetimeDBIdentity() }; + EveryPrimitiveStructType.R = { FSpacetimeDBConnectionId() }; + EveryPrimitiveStructType.S = { FSpacetimeDBTimestamp(9876543210) }; + EveryPrimitiveStructType.T = { FSpacetimeDBTimeDuration(-67419000000003LL) }; + Handler->ExpectedResultEveryPrimitiveStructStringType = FTestClientResultEveryPrimitiveStructString::Ok(EveryPrimitiveStructType); + + TArray Vec; + Vec.Add(3); + Vec.Add(2); + Vec.Add(1); + Vec.Add(0); + Handler->ExpectedResultVecI32StringType = FTestClientResultVecInt32String::Ok(Vec); + // Call the reducers with Ok values + Ctx.Reducers->InsertResultI32String(Handler->ExpectedResultI32StringType); + Ctx.Reducers->InsertResultStringI32(Handler->ExpectedResultStringI32Type); + Ctx.Reducers->InsertResultIdentityString(Handler->ExpectedResultIdentityStringType); + Ctx.Reducers->InsertResultSimpleEnumI32(Handler->ExpectedResultSimpleEnumI32Type); + Ctx.Reducers->InsertResultEveryPrimitiveStructString(Handler->ExpectedResultEveryPrimitiveStructStringType); + Ctx.Reducers->InsertResultVecI32String(Handler->ExpectedResultVecI32StringType); + }); + }); + + ADD_LATENT_AUTOMATION_COMMAND(FWaitForTestCounter(*this, TestName, Handler->Counter, FPlatformTime::Seconds())); + + return true; +} + bool FInsertStructTest::RunTest(const FString &Parameters) { TestName = "InsertStruct"; @@ -1542,10 +1650,9 @@ bool FInsertPrimitivesAsStringTest::RunTest(const FString &Parameters) // Create UUID with bytes: 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 // This should result in the same string: "01020304-0506-0708-090A-0B0C0D0E0F10" PrimitiveStructType.U = FSpacetimeDBUuid(FSpacetimeDBUInt128(0x0102030405060708ULL, 0x090A0B0C0D0E0F10ULL)); - //PrimitiveStructType.U = FSpacetimeDBUuid(FGuid(TEXT("01020304-0506-0708-090A-0B0C0D0E0F10"))); TArray ExpectedStrings; - ExpectedStrings.Reserve(20); + ExpectedStrings.Reserve(21); ExpectedStrings.Add(LexToString(PrimitiveStructType.A)); ExpectedStrings.Add(LexToString(PrimitiveStructType.B)); @@ -2321,24 +2428,3 @@ bool FInsertCallUuidV7Test::RunTest(const FString &Parameters) ADD_LATENT_AUTOMATION_COMMAND(FWaitForTestCounter(*this, TestName, Handler->Counter, FPlatformTime::Seconds())); return true; } - -/* - UDbConnection *Connection = ConnectThen(Handler->Counter, TestName, [this, Handler](UDbConnection *Conn) - { - Conn->Db->OneTimestamp->OnInsert.AddDynamic(Handler, &UTimestampActionsHandler::OnInsertOneTimestamp); - - SubscribeAllThen(Conn, [this, Handler, Conn](FSubscriptionEventContext Ctx) - { - if (Ctx.Db->OneTimestamp->Count() != 0) - { - Handler->Counter->Abort(); - return; - } - - FSpacetimeDBTimestamp TimeStamp; - Handler->SetExpectedvalue(TimeStamp); - - // Call the reducer to insert the new Timestamp. - Ctx.Reducers->InsertOneTimestamp(TimeStamp); - }); }); -*/ \ No newline at end of file diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Private/Tests/TestHandler.cpp b/sdks/unreal/tests/TestClient/Source/TestClient/Private/Tests/TestHandler.cpp index 741fdac216a..a44863b5003 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Private/Tests/TestHandler.cpp +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Private/Tests/TestHandler.cpp @@ -1111,6 +1111,78 @@ void UOptionActionsHandler::OnInsertOptionVecOptionI32(const FEventContext& Cont } } +void UResultActionsHandler::OnInsertResultI32String(const FEventContext& Context, const FResultI32StringType& Value) +{ + static const FString Name(TEXT("InsertResultI32String")); + if (ExpectedResultI32StringType == Value.R) + { + Counter->MarkSuccess(Name); + } + else { + Counter->MarkFailure(Name, TEXT("Unexpected value")); + } +} + +void UResultActionsHandler::OnInsertResultStringI32(const FEventContext& Context, const FResultStringI32Type& Value) +{ + static const FString Name(TEXT("InsertResultStringI32")); + if (ExpectedResultStringI32Type == Value.R) + { + Counter->MarkSuccess(Name); + } + else { + Counter->MarkFailure(Name, TEXT("Unexpected value")); + } +} + +void UResultActionsHandler::OnInsertResultIdentityString(const FEventContext& Context, const FResultIdentityStringType& Value) +{ + static const FString Name(TEXT("InsertResultIdentityString")); + if (ExpectedResultIdentityStringType == Value.R) + { + Counter->MarkSuccess(Name); + } + else { + Counter->MarkFailure(Name, TEXT("Unexpected value")); + } +} + +void UResultActionsHandler::OnInsertResultSimpleEnumI32(const FEventContext& Context, const FResultSimpleEnumI32Type& Value) +{ + static const FString Name(TEXT("InsertResultSimpleEnumI32")); + if (ExpectedResultSimpleEnumI32Type == Value.R) + { + Counter->MarkSuccess(Name); + } + else { + Counter->MarkFailure(Name, TEXT("Unexpected value")); + } +} + +void UResultActionsHandler::OnInsertResultEveryPrimitiveStructString(const FEventContext& Context, const FResultEveryPrimitiveStructStringType& Value) +{ + static const FString Name(TEXT("InsertResultEveryPrimitiveStructString")); + if (ExpectedResultEveryPrimitiveStructStringType == Value.R) + { + Counter->MarkSuccess(Name); + } + else { + Counter->MarkFailure(Name, TEXT("Unexpected value")); + } +} + +void UResultActionsHandler::OnInsertResultVecI32String(const FEventContext& Context, const FResultVecI32StringType& Value) +{ + static const FString Name(TEXT("InsertResultVecI32String")); + if (ExpectedResultVecI32StringType == Value.R) + { + Counter->MarkSuccess(Name); + } + else { + Counter->MarkFailure(Name, TEXT("Unexpected value")); + } +} + void UStructActionsHandler::OnInsertOneUnitStruct(const FEventContext& Context, const FOneUnitStructType& Value) { static const FString Name(TEXT("InsertOneUnitStruct")); diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteLargeTable.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteLargeTable.g.h index 59824331cbf..d8a59317fbd 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteLargeTable.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteLargeTable.g.h @@ -21,16 +21,16 @@ struct TESTCLIENT_API FDeleteLargeTableArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - uint8 A; + uint8 A = 0; // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 B; + uint16 B = 0; // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 C; + uint32 C = 0; // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 D; + uint64 D = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") FSpacetimeDBUInt128 E; @@ -39,16 +39,16 @@ struct TESTCLIENT_API FDeleteLargeTableArgs FSpacetimeDBUInt256 F; // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 G; + int8 G = 0; // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 H; + int16 H = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 I; + int32 I = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int64 J; + int64 J = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") FSpacetimeDBInt128 K; @@ -57,19 +57,19 @@ struct TESTCLIENT_API FDeleteLargeTableArgs FSpacetimeDBInt256 L; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - bool M; + bool M = false; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - float N; + float N = 0.0f; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - double O; + double O = 0.0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") FString P; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - ESimpleEnumType Q; + ESimpleEnumType Q = ESimpleEnumType::Zero; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") FEnumWithPayloadType R; @@ -116,39 +116,39 @@ class TESTCLIENT_API UDeleteLargeTableReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - uint8 A; + uint8 A = 0; // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 B; + uint16 B = 0; // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 C; + uint32 C = 0; // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 D; + uint64 D = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUInt128 E; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUInt256 F; // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 G; + int8 G = 0; // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 H; + int16 H = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 I; + int32 I = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int64 J; + int64 J = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBInt128 K; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBInt256 L; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - bool M; + bool M = false; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - float N; + float N = 0.0f; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - double O; + double O = 0.0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FString P; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - ESimpleEnumType Q; + ESimpleEnumType Q = ESimpleEnumType::Zero; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FEnumWithPayloadType R; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkBool.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkBool.g.h index 25e1c0e2aff..70ba38be648 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkBool.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkBool.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeletePkBoolArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - bool B; + bool B = false; FDeletePkBoolArgs() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeletePkBoolReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - bool B; + bool B = false; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI16.g.h index 033f1a67a71..7a1175a3702 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI16.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeletePkI16Args GENERATED_BODY() // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; FDeletePkI16Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeletePkI16Reducer : public UReducerBase public: // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI32.g.h index d2f8c00c553..1e3ac8b542c 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI32.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeletePkI32Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 N; + int32 N = 0; FDeletePkI32Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeletePkI32Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 N; + int32 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI64.g.h index 58d1d5fe26c..3c9c3dcdfd9 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI64.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeletePkI64Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int64 N; + int64 N = 0; FDeletePkI64Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeletePkI64Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int64 N; + int64 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI8.g.h index 90837a2ccdf..c2d5abaabfa 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkI8.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeletePkI8Args GENERATED_BODY() // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; FDeletePkI8Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeletePkI8Reducer : public UReducerBase public: // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU16.g.h index ad38cb0d968..529c9fe2113 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU16.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeletePkU16Args GENERATED_BODY() // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; FDeletePkU16Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeletePkU16Reducer : public UReducerBase public: // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU32.g.h index 9c57cfeb826..5a4f978feb8 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU32.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeletePkU32Args GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; FDeletePkU32Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeletePkU32Reducer : public UReducerBase public: // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU32InsertPkU32Two.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU32InsertPkU32Two.g.h index fb7bc6b401c..432ba84cf98 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU32InsertPkU32Two.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU32InsertPkU32Two.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FDeletePkU32InsertPkU32TwoArgs GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FDeletePkU32InsertPkU32TwoArgs() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UDeletePkU32InsertPkU32TwoReducer : public UReducerBase public: // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU32Two.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU32Two.g.h index ba2958a8318..961979f2195 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU32Two.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU32Two.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeletePkU32TwoArgs GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; FDeletePkU32TwoArgs() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeletePkU32TwoReducer : public UReducerBase public: // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU64.g.h index 9896bd42c37..12f991cc6d9 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU64.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeletePkU64Args GENERATED_BODY() // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; FDeletePkU64Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeletePkU64Reducer : public UReducerBase public: // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU8.g.h index bdeb42e70b3..44f9644d2e6 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeletePkU8.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeletePkU8Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; FDeletePkU8Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeletePkU8Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueBool.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueBool.g.h index c9a8a1573fa..dc3438742e6 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueBool.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueBool.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeleteUniqueBoolArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - bool B; + bool B = false; FDeleteUniqueBoolArgs() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeleteUniqueBoolReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - bool B; + bool B = false; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI16.g.h index 5f4e34d8770..314e12552b5 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI16.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeleteUniqueI16Args GENERATED_BODY() // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; FDeleteUniqueI16Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeleteUniqueI16Reducer : public UReducerBase public: // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI32.g.h index 6167f785140..4c3aa991bc9 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI32.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeleteUniqueI32Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 N; + int32 N = 0; FDeleteUniqueI32Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeleteUniqueI32Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 N; + int32 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI64.g.h index 33d73a6e70e..e9e572815e0 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI64.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeleteUniqueI64Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int64 N; + int64 N = 0; FDeleteUniqueI64Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeleteUniqueI64Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int64 N; + int64 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI8.g.h index d5e613e53fa..c5a5569af03 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueI8.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeleteUniqueI8Args GENERATED_BODY() // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; FDeleteUniqueI8Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeleteUniqueI8Reducer : public UReducerBase public: // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU16.g.h index e067c011bd5..82ee83b9b7f 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU16.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeleteUniqueU16Args GENERATED_BODY() // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; FDeleteUniqueU16Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeleteUniqueU16Reducer : public UReducerBase public: // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU32.g.h index 783621f9434..b5521d54708 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU32.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeleteUniqueU32Args GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; FDeleteUniqueU32Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeleteUniqueU32Reducer : public UReducerBase public: // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU64.g.h index 6e9aa4a89b3..7f2dd9c32af 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU64.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeleteUniqueU64Args GENERATED_BODY() // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; FDeleteUniqueU64Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeleteUniqueU64Reducer : public UReducerBase public: // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU8.g.h index d83f8fce7a0..ed35d95ecb3 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/DeleteUniqueU8.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FDeleteUniqueU8Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; FDeleteUniqueU8Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UDeleteUniqueU8Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerPkConnectionId.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerPkConnectionId.g.h index 9da7fa1ef88..5f3794f412f 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerPkConnectionId.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerPkConnectionId.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertCallerPkConnectionIdArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertCallerPkConnectionIdArgs() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertCallerPkConnectionIdReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerPkIdentity.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerPkIdentity.g.h index 888606a0763..1ca471c1331 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerPkIdentity.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerPkIdentity.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertCallerPkIdentityArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertCallerPkIdentityArgs() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertCallerPkIdentityReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerUniqueConnectionId.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerUniqueConnectionId.g.h index 50342be7d15..6b0712f21be 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerUniqueConnectionId.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerUniqueConnectionId.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertCallerUniqueConnectionIdArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertCallerUniqueConnectionIdArgs() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertCallerUniqueConnectionIdReducer : public UReducerBas public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerUniqueIdentity.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerUniqueIdentity.g.h index 1fb2d4ae1a3..0fbcd250c11 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerUniqueIdentity.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertCallerUniqueIdentity.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertCallerUniqueIdentityArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertCallerUniqueIdentityArgs() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertCallerUniqueIdentityReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertIntoIndexedSimpleEnum.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertIntoIndexedSimpleEnum.g.h index feb218fcc7d..53f6f6d8ff5 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertIntoIndexedSimpleEnum.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertIntoIndexedSimpleEnum.g.h @@ -15,7 +15,7 @@ struct TESTCLIENT_API FInsertIntoIndexedSimpleEnumArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - ESimpleEnumType N; + ESimpleEnumType N = ESimpleEnumType::Zero; FInsertIntoIndexedSimpleEnumArgs() = default; @@ -47,7 +47,7 @@ class TESTCLIENT_API UInsertIntoIndexedSimpleEnumReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - ESimpleEnumType N; + ESimpleEnumType N = ESimpleEnumType::Zero; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertLargeTable.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertLargeTable.g.h index cc7414a19fb..a56b38408ea 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertLargeTable.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertLargeTable.g.h @@ -21,16 +21,16 @@ struct TESTCLIENT_API FInsertLargeTableArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - uint8 A; + uint8 A = 0; // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 B; + uint16 B = 0; // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 C; + uint32 C = 0; // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 D; + uint64 D = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") FSpacetimeDBUInt128 E; @@ -39,16 +39,16 @@ struct TESTCLIENT_API FInsertLargeTableArgs FSpacetimeDBUInt256 F; // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 G; + int8 G = 0; // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 H; + int16 H = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 I; + int32 I = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int64 J; + int64 J = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") FSpacetimeDBInt128 K; @@ -57,19 +57,19 @@ struct TESTCLIENT_API FInsertLargeTableArgs FSpacetimeDBInt256 L; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - bool M; + bool M = false; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - float N; + float N = 0.0f; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - double O; + double O = 0.0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") FString P; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - ESimpleEnumType Q; + ESimpleEnumType Q = ESimpleEnumType::Zero; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") FEnumWithPayloadType R; @@ -116,39 +116,39 @@ class TESTCLIENT_API UInsertLargeTableReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - uint8 A; + uint8 A = 0; // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 B; + uint16 B = 0; // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 C; + uint32 C = 0; // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 D; + uint64 D = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUInt128 E; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUInt256 F; // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 G; + int8 G = 0; // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 H; + int16 H = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 I; + int32 I = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int64 J; + int64 J = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBInt128 K; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBInt256 L; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - bool M; + bool M = false; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - float N; + float N = 0.0f; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - double O; + double O = 0.0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FString P; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - ESimpleEnumType Q; + ESimpleEnumType Q = ESimpleEnumType::Zero; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FEnumWithPayloadType R; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneBool.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneBool.g.h index aec69d4e6aa..f883e0b26f6 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneBool.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneBool.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertOneBoolArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - bool B; + bool B = false; FInsertOneBoolArgs() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertOneBoolReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - bool B; + bool B = false; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneF32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneF32.g.h index 4777f461882..c56b7a1ccb9 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneF32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneF32.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertOneF32Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - float F; + float F = 0.0f; FInsertOneF32Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertOneF32Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - float F; + float F = 0.0f; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneF64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneF64.g.h index ba465b082c1..c757d38ffb4 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneF64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneF64.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertOneF64Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - double F; + double F = 0.0; FInsertOneF64Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertOneF64Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - double F; + double F = 0.0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI16.g.h index 3d03f093a0f..fb9ca5ab1b9 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI16.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertOneI16Args GENERATED_BODY() // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; FInsertOneI16Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertOneI16Reducer : public UReducerBase public: // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI32.g.h index 45b3cc4d105..8c1c3cc2d8a 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI32.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertOneI32Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 N; + int32 N = 0; FInsertOneI32Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertOneI32Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 N; + int32 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI64.g.h index 9ed638daeed..171d475c7c7 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI64.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertOneI64Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int64 N; + int64 N = 0; FInsertOneI64Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertOneI64Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int64 N; + int64 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI8.g.h index 088c8d180bd..ef220b4f949 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneI8.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertOneI8Args GENERATED_BODY() // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; FInsertOneI8Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertOneI8Reducer : public UReducerBase public: // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneSimpleEnum.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneSimpleEnum.g.h index 8cac0a1405d..c8129ef2e19 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneSimpleEnum.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneSimpleEnum.g.h @@ -15,7 +15,7 @@ struct TESTCLIENT_API FInsertOneSimpleEnumArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - ESimpleEnumType E; + ESimpleEnumType E = ESimpleEnumType::Zero; FInsertOneSimpleEnumArgs() = default; @@ -47,7 +47,7 @@ class TESTCLIENT_API UInsertOneSimpleEnumReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - ESimpleEnumType E; + ESimpleEnumType E = ESimpleEnumType::Zero; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU16.g.h index c3bda020b77..90a6eb0c349 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU16.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertOneU16Args GENERATED_BODY() // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; FInsertOneU16Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertOneU16Reducer : public UReducerBase public: // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU32.g.h index 076bf6f8d0e..12d279277c6 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU32.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertOneU32Args GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; FInsertOneU32Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertOneU32Reducer : public UReducerBase public: // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU64.g.h index 485ceca3b79..850c77db82a 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU64.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertOneU64Args GENERATED_BODY() // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; FInsertOneU64Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertOneU64Reducer : public UReducerBase public: // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU8.g.h index bcdae01d7fa..04c4c5ad6d1 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertOneU8.g.h @@ -14,7 +14,7 @@ struct TESTCLIENT_API FInsertOneU8Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; FInsertOneU8Args() = default; @@ -46,7 +46,7 @@ class TESTCLIENT_API UInsertOneU8Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkBool.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkBool.g.h index 2e82ac31691..4d3d8b4b5d7 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkBool.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkBool.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertPkBoolArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - bool B; + bool B = false; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkBoolArgs() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertPkBoolReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - bool B; + bool B = false; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkConnectionId.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkConnectionId.g.h index 6cdf10ae644..41a7ef3bfd7 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkConnectionId.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkConnectionId.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertPkConnectionIdArgs FSpacetimeDBConnectionId A; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkConnectionIdArgs() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertPkConnectionIdReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBConnectionId A; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI128.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI128.g.h index 2247cbcc275..beda3bf07fb 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI128.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI128.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertPkI128Args FSpacetimeDBInt128 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkI128Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertPkI128Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBInt128 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI16.g.h index e2d71c39f41..8d4a4b82d9f 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI16.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertPkI16Args GENERATED_BODY() // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkI16Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertPkI16Reducer : public UReducerBase public: // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI256.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI256.g.h index 12dc1af35bd..9da709ca368 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI256.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI256.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertPkI256Args FSpacetimeDBInt256 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkI256Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertPkI256Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBInt256 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI32.g.h index 1879cca6fb8..11f51d170dd 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI32.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertPkI32Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 N; + int32 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkI32Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertPkI32Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 N; + int32 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI64.g.h index f09e8ab50c7..c0baad99f80 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI64.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertPkI64Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int64 N; + int64 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkI64Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertPkI64Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int64 N; + int64 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI8.g.h index f5c975a0be3..d8e40600581 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkI8.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertPkI8Args GENERATED_BODY() // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkI8Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertPkI8Reducer : public UReducerBase public: // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkIdentity.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkIdentity.g.h index 27c6ef102f4..8c7fb5fd850 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkIdentity.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkIdentity.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertPkIdentityArgs FSpacetimeDBIdentity I; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkIdentityArgs() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertPkIdentityReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBIdentity I; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkSimpleEnum.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkSimpleEnum.g.h index a906da03cc3..07f7ae60e87 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkSimpleEnum.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkSimpleEnum.g.h @@ -15,10 +15,10 @@ struct TESTCLIENT_API FInsertPkSimpleEnumArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - ESimpleEnumType A; + ESimpleEnumType A = ESimpleEnumType::Zero; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkSimpleEnumArgs() = default; @@ -50,9 +50,9 @@ class TESTCLIENT_API UInsertPkSimpleEnumReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - ESimpleEnumType A; + ESimpleEnumType A = ESimpleEnumType::Zero; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkString.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkString.g.h index e980118776c..131bb2d83a4 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkString.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkString.g.h @@ -17,7 +17,7 @@ struct TESTCLIENT_API FInsertPkStringArgs FString S; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkStringArgs() = default; @@ -51,7 +51,7 @@ class TESTCLIENT_API UInsertPkStringReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FString S; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU128.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU128.g.h index c5bf0e0657c..e337c1eb679 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU128.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU128.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertPkU128Args FSpacetimeDBUInt128 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkU128Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertPkU128Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUInt128 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU16.g.h index 4975162171c..6c544100c1f 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU16.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertPkU16Args GENERATED_BODY() // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkU16Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertPkU16Reducer : public UReducerBase public: // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU256.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU256.g.h index 3c7a5409db2..84eb896d374 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU256.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU256.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertPkU256Args FSpacetimeDBUInt256 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkU256Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertPkU256Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUInt256 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU32.g.h index 0c441669838..2e1007952f1 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU32.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertPkU32Args GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkU32Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertPkU32Reducer : public UReducerBase public: // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU32Two.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU32Two.g.h index 40f3a34f828..d2f4a363d00 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU32Two.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU32Two.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertPkU32TwoArgs GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkU32TwoArgs() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertPkU32TwoReducer : public UReducerBase public: // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU64.g.h index 2e6246d7c2e..d0fcd819230 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU64.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertPkU64Args GENERATED_BODY() // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkU64Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertPkU64Reducer : public UReducerBase public: // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU8.g.h index 53b7dcdaf0e..a38368059b0 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkU8.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertPkU8Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkU8Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertPkU8Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkUuid.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkUuid.g.h index 29a855e79bd..44dd0659277 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkUuid.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertPkUuid.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertPkUuidArgs FSpacetimeDBUuid U; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertPkUuidArgs() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertPkUuidReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUuid U; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultEveryPrimitiveStructString.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultEveryPrimitiveStructString.g.h new file mode 100644 index 00000000000..837756ebbfb --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultEveryPrimitiveStructString.g.h @@ -0,0 +1,55 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/ReducerBase.g.h" +#include "ModuleBindings/Results/TestClientResultEveryPrimitiveStructString.g.h" +#include "ModuleBindings/Types/EveryPrimitiveStructType.g.h" +#include "InsertResultEveryPrimitiveStructString.g.generated.h" + +// Reducer arguments struct for InsertResultEveryPrimitiveStructString +USTRUCT(BlueprintType) +struct TESTCLIENT_API FInsertResultEveryPrimitiveStructStringArgs +{ + GENERATED_BODY() + + UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") + FTestClientResultEveryPrimitiveStructString R; + + FInsertResultEveryPrimitiveStructStringArgs() = default; + + FInsertResultEveryPrimitiveStructStringArgs(const FTestClientResultEveryPrimitiveStructString& InR) + : R(InR) + {} + + + FORCEINLINE bool operator==(const FInsertResultEveryPrimitiveStructStringArgs& Other) const + { + return R == Other.R; + } + FORCEINLINE bool operator!=(const FInsertResultEveryPrimitiveStructStringArgs& Other) const + { + return !(*this == Other); + } +}; + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_STRUCT(FInsertResultEveryPrimitiveStructStringArgs, R); +} + +// Reducer class for internal dispatching +UCLASS(BlueprintType) +class TESTCLIENT_API UInsertResultEveryPrimitiveStructStringReducer : public UReducerBase +{ + GENERATED_BODY() + +public: + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + FTestClientResultEveryPrimitiveStructString R; + +}; + + diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultI32String.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultI32String.g.h new file mode 100644 index 00000000000..8ea621b12dc --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultI32String.g.h @@ -0,0 +1,54 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/ReducerBase.g.h" +#include "ModuleBindings/Results/TestClientResultInt32String.g.h" +#include "InsertResultI32String.g.generated.h" + +// Reducer arguments struct for InsertResultI32String +USTRUCT(BlueprintType) +struct TESTCLIENT_API FInsertResultI32StringArgs +{ + GENERATED_BODY() + + UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") + FTestClientResultInt32String R; + + FInsertResultI32StringArgs() = default; + + FInsertResultI32StringArgs(const FTestClientResultInt32String& InR) + : R(InR) + {} + + + FORCEINLINE bool operator==(const FInsertResultI32StringArgs& Other) const + { + return R == Other.R; + } + FORCEINLINE bool operator!=(const FInsertResultI32StringArgs& Other) const + { + return !(*this == Other); + } +}; + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_STRUCT(FInsertResultI32StringArgs, R); +} + +// Reducer class for internal dispatching +UCLASS(BlueprintType) +class TESTCLIENT_API UInsertResultI32StringReducer : public UReducerBase +{ + GENERATED_BODY() + +public: + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + FTestClientResultInt32String R; + +}; + + diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultIdentityString.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultIdentityString.g.h new file mode 100644 index 00000000000..d2f811c780b --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultIdentityString.g.h @@ -0,0 +1,55 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/ReducerBase.g.h" +#include "ModuleBindings/Results/TestClientResultIdentityString.g.h" +#include "Types/Builtins.h" +#include "InsertResultIdentityString.g.generated.h" + +// Reducer arguments struct for InsertResultIdentityString +USTRUCT(BlueprintType) +struct TESTCLIENT_API FInsertResultIdentityStringArgs +{ + GENERATED_BODY() + + UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") + FTestClientResultIdentityString R; + + FInsertResultIdentityStringArgs() = default; + + FInsertResultIdentityStringArgs(const FTestClientResultIdentityString& InR) + : R(InR) + {} + + + FORCEINLINE bool operator==(const FInsertResultIdentityStringArgs& Other) const + { + return R == Other.R; + } + FORCEINLINE bool operator!=(const FInsertResultIdentityStringArgs& Other) const + { + return !(*this == Other); + } +}; + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_STRUCT(FInsertResultIdentityStringArgs, R); +} + +// Reducer class for internal dispatching +UCLASS(BlueprintType) +class TESTCLIENT_API UInsertResultIdentityStringReducer : public UReducerBase +{ + GENERATED_BODY() + +public: + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + FTestClientResultIdentityString R; + +}; + + diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultSimpleEnumI32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultSimpleEnumI32.g.h new file mode 100644 index 00000000000..e51dfccab9d --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultSimpleEnumI32.g.h @@ -0,0 +1,55 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/ReducerBase.g.h" +#include "ModuleBindings/Results/TestClientResultSimpleEnumInt32.g.h" +#include "ModuleBindings/Types/SimpleEnumType.g.h" +#include "InsertResultSimpleEnumI32.g.generated.h" + +// Reducer arguments struct for InsertResultSimpleEnumI32 +USTRUCT(BlueprintType) +struct TESTCLIENT_API FInsertResultSimpleEnumI32Args +{ + GENERATED_BODY() + + UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") + FTestClientResultSimpleEnumInt32 R; + + FInsertResultSimpleEnumI32Args() = default; + + FInsertResultSimpleEnumI32Args(const FTestClientResultSimpleEnumInt32& InR) + : R(InR) + {} + + + FORCEINLINE bool operator==(const FInsertResultSimpleEnumI32Args& Other) const + { + return R == Other.R; + } + FORCEINLINE bool operator!=(const FInsertResultSimpleEnumI32Args& Other) const + { + return !(*this == Other); + } +}; + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_STRUCT(FInsertResultSimpleEnumI32Args, R); +} + +// Reducer class for internal dispatching +UCLASS(BlueprintType) +class TESTCLIENT_API UInsertResultSimpleEnumI32Reducer : public UReducerBase +{ + GENERATED_BODY() + +public: + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + FTestClientResultSimpleEnumInt32 R; + +}; + + diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultStringI32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultStringI32.g.h new file mode 100644 index 00000000000..6e1b9867c14 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultStringI32.g.h @@ -0,0 +1,54 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/ReducerBase.g.h" +#include "ModuleBindings/Results/TestClientResultStringInt32.g.h" +#include "InsertResultStringI32.g.generated.h" + +// Reducer arguments struct for InsertResultStringI32 +USTRUCT(BlueprintType) +struct TESTCLIENT_API FInsertResultStringI32Args +{ + GENERATED_BODY() + + UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") + FTestClientResultStringInt32 R; + + FInsertResultStringI32Args() = default; + + FInsertResultStringI32Args(const FTestClientResultStringInt32& InR) + : R(InR) + {} + + + FORCEINLINE bool operator==(const FInsertResultStringI32Args& Other) const + { + return R == Other.R; + } + FORCEINLINE bool operator!=(const FInsertResultStringI32Args& Other) const + { + return !(*this == Other); + } +}; + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_STRUCT(FInsertResultStringI32Args, R); +} + +// Reducer class for internal dispatching +UCLASS(BlueprintType) +class TESTCLIENT_API UInsertResultStringI32Reducer : public UReducerBase +{ + GENERATED_BODY() + +public: + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + FTestClientResultStringInt32 R; + +}; + + diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultVecI32String.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultVecI32String.g.h new file mode 100644 index 00000000000..4c3fe5e92da --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertResultVecI32String.g.h @@ -0,0 +1,54 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/ReducerBase.g.h" +#include "ModuleBindings/Results/TestClientResultVecInt32String.g.h" +#include "InsertResultVecI32String.g.generated.h" + +// Reducer arguments struct for InsertResultVecI32String +USTRUCT(BlueprintType) +struct TESTCLIENT_API FInsertResultVecI32StringArgs +{ + GENERATED_BODY() + + UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") + FTestClientResultVecInt32String R; + + FInsertResultVecI32StringArgs() = default; + + FInsertResultVecI32StringArgs(const FTestClientResultVecInt32String& InR) + : R(InR) + {} + + + FORCEINLINE bool operator==(const FInsertResultVecI32StringArgs& Other) const + { + return R == Other.R; + } + FORCEINLINE bool operator!=(const FInsertResultVecI32StringArgs& Other) const + { + return !(*this == Other); + } +}; + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_STRUCT(FInsertResultVecI32StringArgs, R); +} + +// Reducer class for internal dispatching +UCLASS(BlueprintType) +class TESTCLIENT_API UInsertResultVecI32StringReducer : public UReducerBase +{ + GENERATED_BODY() + +public: + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + FTestClientResultVecInt32String R; + +}; + + diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueBool.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueBool.g.h index d67afcbd9b6..543c15cce2c 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueBool.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueBool.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertUniqueBoolArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - bool B; + bool B = false; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueBoolArgs() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertUniqueBoolReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - bool B; + bool B = false; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueConnectionId.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueConnectionId.g.h index 78e7012edba..37adf264926 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueConnectionId.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueConnectionId.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertUniqueConnectionIdArgs FSpacetimeDBConnectionId A; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueConnectionIdArgs() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertUniqueConnectionIdReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBConnectionId A; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI128.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI128.g.h index 5f295565bf7..0b0efc9ada9 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI128.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI128.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertUniqueI128Args FSpacetimeDBInt128 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueI128Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertUniqueI128Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBInt128 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI16.g.h index ae9aec9046d..dd0cabb1b7b 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI16.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertUniqueI16Args GENERATED_BODY() // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueI16Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertUniqueI16Reducer : public UReducerBase public: // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI256.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI256.g.h index b1c4d4fb25c..2bc013e5346 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI256.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI256.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertUniqueI256Args FSpacetimeDBInt256 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueI256Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertUniqueI256Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBInt256 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI32.g.h index c812bb58f6e..d9876f34df8 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI32.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertUniqueI32Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 N; + int32 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueI32Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertUniqueI32Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 N; + int32 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI64.g.h index b427f4885e6..ba2290dacb7 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI64.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertUniqueI64Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int64 N; + int64 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueI64Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertUniqueI64Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int64 N; + int64 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI8.g.h index fc585f2484b..9d244be74a1 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueI8.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertUniqueI8Args GENERATED_BODY() // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueI8Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertUniqueI8Reducer : public UReducerBase public: // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueIdentity.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueIdentity.g.h index 139fb2fec21..eaa04a0739e 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueIdentity.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueIdentity.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertUniqueIdentityArgs FSpacetimeDBIdentity I; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueIdentityArgs() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertUniqueIdentityReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBIdentity I; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueString.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueString.g.h index fd4beb2d9b6..dc1ab923a38 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueString.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueString.g.h @@ -17,7 +17,7 @@ struct TESTCLIENT_API FInsertUniqueStringArgs FString S; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueStringArgs() = default; @@ -51,7 +51,7 @@ class TESTCLIENT_API UInsertUniqueStringReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FString S; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU128.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU128.g.h index 3620b201f3f..c0665540afb 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU128.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU128.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertUniqueU128Args FSpacetimeDBUInt128 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueU128Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertUniqueU128Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUInt128 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU16.g.h index 45e6a25129d..05a93af3d9c 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU16.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertUniqueU16Args GENERATED_BODY() // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueU16Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertUniqueU16Reducer : public UReducerBase public: // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU256.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU256.g.h index da682ff5fba..4f3b75b6291 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU256.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU256.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertUniqueU256Args FSpacetimeDBUInt256 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueU256Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertUniqueU256Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUInt256 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU32.g.h index edceb8e1b20..f4791536ea9 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU32.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertUniqueU32Args GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueU32Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertUniqueU32Reducer : public UReducerBase public: // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU32UpdatePkU32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU32UpdatePkU32.g.h index 4043ae8f749..278728ac96c 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU32UpdatePkU32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU32UpdatePkU32.g.h @@ -14,13 +14,13 @@ struct TESTCLIENT_API FInsertUniqueU32UpdatePkU32Args GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 DUnique; + int32 DUnique = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 DPk; + int32 DPk = 0; FInsertUniqueU32UpdatePkU32Args() = default; @@ -52,11 +52,11 @@ class TESTCLIENT_API UInsertUniqueU32UpdatePkU32Reducer : public UReducerBase public: // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 DUnique; + int32 DUnique = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 DPk; + int32 DPk = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU64.g.h index 5bd306f7465..984e49e12e0 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU64.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertUniqueU64Args GENERATED_BODY() // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueU64Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertUniqueU64Reducer : public UReducerBase public: // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU8.g.h index 0661985e02f..69fce541158 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueU8.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FInsertUniqueU8Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueU8Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UInsertUniqueU8Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueUuid.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueUuid.g.h index b4d0ecf4810..55b761520de 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueUuid.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/InsertUniqueUuid.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FInsertUniqueUuidArgs FSpacetimeDBUuid U; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FInsertUniqueUuidArgs() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UInsertUniqueUuidReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUuid U; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateIndexedSimpleEnum.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateIndexedSimpleEnum.g.h index a5cd1606efa..d3e063fbb2c 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateIndexedSimpleEnum.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateIndexedSimpleEnum.g.h @@ -15,10 +15,10 @@ struct TESTCLIENT_API FUpdateIndexedSimpleEnumArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - ESimpleEnumType A; + ESimpleEnumType A = ESimpleEnumType::Zero; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - ESimpleEnumType B; + ESimpleEnumType B = ESimpleEnumType::Zero; FUpdateIndexedSimpleEnumArgs() = default; @@ -50,9 +50,9 @@ class TESTCLIENT_API UUpdateIndexedSimpleEnumReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - ESimpleEnumType A; + ESimpleEnumType A = ESimpleEnumType::Zero; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - ESimpleEnumType B; + ESimpleEnumType B = ESimpleEnumType::Zero; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkBool.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkBool.g.h index 8c68f39bd67..621b7f43c43 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkBool.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkBool.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdatePkBoolArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - bool B; + bool B = false; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkBoolArgs() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdatePkBoolReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - bool B; + bool B = false; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkConnectionId.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkConnectionId.g.h index 312230cdb12..4b5361210a8 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkConnectionId.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkConnectionId.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdatePkConnectionIdArgs FSpacetimeDBConnectionId A; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkConnectionIdArgs() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdatePkConnectionIdReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBConnectionId A; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI128.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI128.g.h index ed75d512bf9..b88ca203009 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI128.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI128.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdatePkI128Args FSpacetimeDBInt128 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkI128Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdatePkI128Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBInt128 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI16.g.h index f3d66144a28..cf483820e45 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI16.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdatePkI16Args GENERATED_BODY() // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkI16Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdatePkI16Reducer : public UReducerBase public: // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI256.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI256.g.h index 2e6ae69366a..27c0eb0c6df 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI256.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI256.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdatePkI256Args FSpacetimeDBInt256 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkI256Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdatePkI256Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBInt256 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI32.g.h index f2f1c06b646..6a776d54252 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI32.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdatePkI32Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 N; + int32 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkI32Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdatePkI32Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 N; + int32 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI64.g.h index b06c48638a1..5268d76a581 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI64.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdatePkI64Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int64 N; + int64 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkI64Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdatePkI64Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int64 N; + int64 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI8.g.h index 9f80bbd2758..a667d43af5a 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkI8.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdatePkI8Args GENERATED_BODY() // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkI8Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdatePkI8Reducer : public UReducerBase public: // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkIdentity.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkIdentity.g.h index 1922d275bb9..6b51ed526cd 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkIdentity.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkIdentity.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdatePkIdentityArgs FSpacetimeDBIdentity I; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkIdentityArgs() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdatePkIdentityReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBIdentity I; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkSimpleEnum.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkSimpleEnum.g.h index 18db2b63fd6..b392bfc7703 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkSimpleEnum.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkSimpleEnum.g.h @@ -15,10 +15,10 @@ struct TESTCLIENT_API FUpdatePkSimpleEnumArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - ESimpleEnumType A; + ESimpleEnumType A = ESimpleEnumType::Zero; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkSimpleEnumArgs() = default; @@ -50,9 +50,9 @@ class TESTCLIENT_API UUpdatePkSimpleEnumReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - ESimpleEnumType A; + ESimpleEnumType A = ESimpleEnumType::Zero; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkString.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkString.g.h index 4e06bb78fad..d47c03481c8 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkString.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkString.g.h @@ -17,7 +17,7 @@ struct TESTCLIENT_API FUpdatePkStringArgs FString S; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkStringArgs() = default; @@ -51,7 +51,7 @@ class TESTCLIENT_API UUpdatePkStringReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FString S; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU128.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU128.g.h index 2f7743a0755..e207a8535d0 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU128.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU128.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdatePkU128Args FSpacetimeDBUInt128 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkU128Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdatePkU128Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUInt128 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU16.g.h index 722555f3ebc..486bd727d7d 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU16.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdatePkU16Args GENERATED_BODY() // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkU16Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdatePkU16Reducer : public UReducerBase public: // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU256.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU256.g.h index 222316c5d12..3acc93f6157 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU256.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU256.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdatePkU256Args FSpacetimeDBUInt256 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkU256Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdatePkU256Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUInt256 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU32.g.h index 8554674322f..8a3bb0a8352 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU32.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdatePkU32Args GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkU32Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdatePkU32Reducer : public UReducerBase public: // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU32Two.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU32Two.g.h index 7e7b9c127ac..05454c89d8b 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU32Two.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU32Two.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdatePkU32TwoArgs GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkU32TwoArgs() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdatePkU32TwoReducer : public UReducerBase public: // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU64.g.h index aab1941e3eb..ba8308d7fff 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU64.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdatePkU64Args GENERATED_BODY() // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkU64Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdatePkU64Reducer : public UReducerBase public: // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU8.g.h index 89b1ca7687f..6de5fa4d07c 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkU8.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdatePkU8Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkU8Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdatePkU8Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkUuid.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkUuid.g.h index 9b5554770b6..13026adc834 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkUuid.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdatePkUuid.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdatePkUuidArgs FSpacetimeDBUuid U; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdatePkUuidArgs() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdatePkUuidReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUuid U; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueBool.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueBool.g.h index 50519d529b7..7774a9111e1 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueBool.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueBool.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdateUniqueBoolArgs GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - bool B; + bool B = false; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueBoolArgs() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdateUniqueBoolReducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - bool B; + bool B = false; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueConnectionId.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueConnectionId.g.h index 4cb4d980de6..57e3e320968 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueConnectionId.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueConnectionId.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdateUniqueConnectionIdArgs FSpacetimeDBConnectionId A; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueConnectionIdArgs() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdateUniqueConnectionIdReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBConnectionId A; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI128.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI128.g.h index 840c31f2224..fbc1d7363b1 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI128.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI128.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdateUniqueI128Args FSpacetimeDBInt128 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueI128Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdateUniqueI128Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBInt128 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI16.g.h index 00bedeb3c46..93234d77c47 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI16.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdateUniqueI16Args GENERATED_BODY() // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueI16Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdateUniqueI16Reducer : public UReducerBase public: // NOTE: int16 field not exposed to Blueprint due to non-blueprintable elements - int16 N; + int16 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI256.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI256.g.h index 6bda00d747c..312ef201149 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI256.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI256.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdateUniqueI256Args FSpacetimeDBInt256 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueI256Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdateUniqueI256Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBInt256 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI32.g.h index 526b7d276ab..5cd9a81d140 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI32.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdateUniqueI32Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 N; + int32 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueI32Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdateUniqueI32Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 N; + int32 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI64.g.h index 63ae2597aff..e32b55966bd 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI64.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdateUniqueI64Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int64 N; + int64 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueI64Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdateUniqueI64Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int64 N; + int64 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI8.g.h index 647bde6e06b..ba9802aa0ed 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueI8.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdateUniqueI8Args GENERATED_BODY() // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueI8Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdateUniqueI8Reducer : public UReducerBase public: // NOTE: int8 field not exposed to Blueprint due to non-blueprintable elements - int8 N; + int8 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueIdentity.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueIdentity.g.h index 1ddf459dfc6..b2bcd2d8cb7 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueIdentity.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueIdentity.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdateUniqueIdentityArgs FSpacetimeDBIdentity I; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueIdentityArgs() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdateUniqueIdentityReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBIdentity I; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueString.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueString.g.h index 7dc1ad2da86..39f94f4b1e7 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueString.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueString.g.h @@ -17,7 +17,7 @@ struct TESTCLIENT_API FUpdateUniqueStringArgs FString S; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueStringArgs() = default; @@ -51,7 +51,7 @@ class TESTCLIENT_API UUpdateUniqueStringReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FString S; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU128.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU128.g.h index 7d1f015faa1..46869a820d1 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU128.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU128.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdateUniqueU128Args FSpacetimeDBUInt128 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueU128Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdateUniqueU128Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUInt128 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU16.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU16.g.h index 3d73b91b099..8e8792d2fbd 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU16.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU16.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdateUniqueU16Args GENERATED_BODY() // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueU16Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdateUniqueU16Reducer : public UReducerBase public: // NOTE: uint16 field not exposed to Blueprint due to non-blueprintable elements - uint16 N; + uint16 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU256.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU256.g.h index dadb65e86f0..3142724e351 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU256.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU256.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdateUniqueU256Args FSpacetimeDBUInt256 N; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueU256Args() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdateUniqueU256Reducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUInt256 N; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU32.g.h index 44996e2649e..1e190fc9d24 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU32.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU32.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdateUniqueU32Args GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueU32Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdateUniqueU32Reducer : public UReducerBase public: // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 N; + uint32 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU64.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU64.g.h index bec5bfe8f18..dec1f921e62 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU64.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU64.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdateUniqueU64Args GENERATED_BODY() // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueU64Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdateUniqueU64Reducer : public UReducerBase public: // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements - uint64 N; + uint64 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU8.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU8.g.h index 3087615ced7..91377c72f9f 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU8.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueU8.g.h @@ -14,10 +14,10 @@ struct TESTCLIENT_API FUpdateUniqueU8Args GENERATED_BODY() UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueU8Args() = default; @@ -49,9 +49,9 @@ class TESTCLIENT_API UUpdateUniqueU8Reducer : public UReducerBase public: UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - uint8 N; + uint8 N = 0; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueUuid.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueUuid.g.h index 75b3f167b48..985882c9ce2 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueUuid.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Reducers/UpdateUniqueUuid.g.h @@ -18,7 +18,7 @@ struct TESTCLIENT_API FUpdateUniqueUuidArgs FSpacetimeDBUuid U; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; FUpdateUniqueUuidArgs() = default; @@ -52,7 +52,7 @@ class TESTCLIENT_API UUpdateUniqueUuidReducer : public UReducerBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") FSpacetimeDBUuid U; UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") - int32 Data; + int32 Data = 0; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultEveryPrimitiveStructString.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultEveryPrimitiveStructString.g.h new file mode 100644 index 00000000000..b70751e72ea --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultEveryPrimitiveStructString.g.h @@ -0,0 +1,101 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/Types/EveryPrimitiveStructType.g.h" +#include "TestClientResultEveryPrimitiveStructString.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTCLIENT_API FTestClientResultEveryPrimitiveStructString +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + bool bIsOk = false; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB", meta = (EditCondition = "bIsOk")) + FEveryPrimitiveStructType OkValue; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB", meta = (EditCondition = "!bIsOk")) + FString ErrValue; + + FTestClientResultEveryPrimitiveStructString() = default; + + static FTestClientResultEveryPrimitiveStructString Ok(const FEveryPrimitiveStructType& InValue) + { + FTestClientResultEveryPrimitiveStructString Result; + Result.bIsOk = true; + Result.OkValue = InValue; + return Result; + } + + static FTestClientResultEveryPrimitiveStructString Err(const FString& InValue) + { + FTestClientResultEveryPrimitiveStructString Result; + Result.bIsOk = false; + Result.ErrValue = InValue; + return Result; + } + + bool IsOk() const { return bIsOk; } + bool IsErr() const { return !bIsOk; } + + const FEveryPrimitiveStructType& GetOk() const + { + check(bIsOk); + return OkValue; + } + + const FString& GetErr() const + { + check(!bIsOk); + return ErrValue; + } + + FORCEINLINE bool operator==(const FTestClientResultEveryPrimitiveStructString& Other) const + { + if (bIsOk != Other.bIsOk) return false; + if (bIsOk) + { + return OkValue == Other.OkValue; + } + else + { + return ErrValue == Other.ErrValue; + } + } + + FORCEINLINE bool operator!=(const FTestClientResultEveryPrimitiveStructString& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FTestClientResultEveryPrimitiveStructString. + * Hashes the bIsOk flag and the appropriate value. + * @param Result The FTestClientResultEveryPrimitiveStructString instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FTestClientResultEveryPrimitiveStructString& Result) +{ + uint32 Hash = GetTypeHash(Result.bIsOk); + if (Result.bIsOk) + { + Hash = HashCombine(Hash, GetTypeHash(Result.OkValue)); + } + else + { + Hash = HashCombine(Hash, GetTypeHash(Result.ErrValue)); + } + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FTestClientResultEveryPrimitiveStructString); + + UE_SPACETIMEDB_RESULT(FTestClientResultEveryPrimitiveStructString, bIsOk, OkValue, ErrValue); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultIdentityString.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultIdentityString.g.h new file mode 100644 index 00000000000..d4fef91a60d --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultIdentityString.g.h @@ -0,0 +1,101 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/Builtins.h" +#include "TestClientResultIdentityString.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTCLIENT_API FTestClientResultIdentityString +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + bool bIsOk = false; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB", meta = (EditCondition = "bIsOk")) + FSpacetimeDBIdentity OkValue; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB", meta = (EditCondition = "!bIsOk")) + FString ErrValue; + + FTestClientResultIdentityString() = default; + + static FTestClientResultIdentityString Ok(const FSpacetimeDBIdentity& InValue) + { + FTestClientResultIdentityString Result; + Result.bIsOk = true; + Result.OkValue = InValue; + return Result; + } + + static FTestClientResultIdentityString Err(const FString& InValue) + { + FTestClientResultIdentityString Result; + Result.bIsOk = false; + Result.ErrValue = InValue; + return Result; + } + + bool IsOk() const { return bIsOk; } + bool IsErr() const { return !bIsOk; } + + const FSpacetimeDBIdentity& GetOk() const + { + check(bIsOk); + return OkValue; + } + + const FString& GetErr() const + { + check(!bIsOk); + return ErrValue; + } + + FORCEINLINE bool operator==(const FTestClientResultIdentityString& Other) const + { + if (bIsOk != Other.bIsOk) return false; + if (bIsOk) + { + return OkValue == Other.OkValue; + } + else + { + return ErrValue == Other.ErrValue; + } + } + + FORCEINLINE bool operator!=(const FTestClientResultIdentityString& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FTestClientResultIdentityString. + * Hashes the bIsOk flag and the appropriate value. + * @param Result The FTestClientResultIdentityString instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FTestClientResultIdentityString& Result) +{ + uint32 Hash = GetTypeHash(Result.bIsOk); + if (Result.bIsOk) + { + Hash = HashCombine(Hash, GetTypeHash(Result.OkValue)); + } + else + { + Hash = HashCombine(Hash, GetTypeHash(Result.ErrValue)); + } + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FTestClientResultIdentityString); + + UE_SPACETIMEDB_RESULT(FTestClientResultIdentityString, bIsOk, OkValue, ErrValue); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultInt32String.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultInt32String.g.h new file mode 100644 index 00000000000..b8fc02c91e8 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultInt32String.g.h @@ -0,0 +1,100 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "TestClientResultInt32String.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTCLIENT_API FTestClientResultInt32String +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + bool bIsOk = false; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB", meta = (EditCondition = "bIsOk")) + int32 OkValue; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB", meta = (EditCondition = "!bIsOk")) + FString ErrValue; + + FTestClientResultInt32String() = default; + + static FTestClientResultInt32String Ok(const int32& InValue) + { + FTestClientResultInt32String Result; + Result.bIsOk = true; + Result.OkValue = InValue; + return Result; + } + + static FTestClientResultInt32String Err(const FString& InValue) + { + FTestClientResultInt32String Result; + Result.bIsOk = false; + Result.ErrValue = InValue; + return Result; + } + + bool IsOk() const { return bIsOk; } + bool IsErr() const { return !bIsOk; } + + const int32& GetOk() const + { + check(bIsOk); + return OkValue; + } + + const FString& GetErr() const + { + check(!bIsOk); + return ErrValue; + } + + FORCEINLINE bool operator==(const FTestClientResultInt32String& Other) const + { + if (bIsOk != Other.bIsOk) return false; + if (bIsOk) + { + return OkValue == Other.OkValue; + } + else + { + return ErrValue == Other.ErrValue; + } + } + + FORCEINLINE bool operator!=(const FTestClientResultInt32String& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FTestClientResultInt32String. + * Hashes the bIsOk flag and the appropriate value. + * @param Result The FTestClientResultInt32String instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FTestClientResultInt32String& Result) +{ + uint32 Hash = GetTypeHash(Result.bIsOk); + if (Result.bIsOk) + { + Hash = HashCombine(Hash, GetTypeHash(Result.OkValue)); + } + else + { + Hash = HashCombine(Hash, GetTypeHash(Result.ErrValue)); + } + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FTestClientResultInt32String); + + UE_SPACETIMEDB_RESULT(FTestClientResultInt32String, bIsOk, OkValue, ErrValue); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultSimpleEnumInt32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultSimpleEnumInt32.g.h new file mode 100644 index 00000000000..1f3a9fff848 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultSimpleEnumInt32.g.h @@ -0,0 +1,101 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/Types/SimpleEnumType.g.h" +#include "TestClientResultSimpleEnumInt32.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTCLIENT_API FTestClientResultSimpleEnumInt32 +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + bool bIsOk = false; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB", meta = (EditCondition = "bIsOk")) + ESimpleEnumType OkValue; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB", meta = (EditCondition = "!bIsOk")) + int32 ErrValue; + + FTestClientResultSimpleEnumInt32() = default; + + static FTestClientResultSimpleEnumInt32 Ok(const ESimpleEnumType& InValue) + { + FTestClientResultSimpleEnumInt32 Result; + Result.bIsOk = true; + Result.OkValue = InValue; + return Result; + } + + static FTestClientResultSimpleEnumInt32 Err(const int32& InValue) + { + FTestClientResultSimpleEnumInt32 Result; + Result.bIsOk = false; + Result.ErrValue = InValue; + return Result; + } + + bool IsOk() const { return bIsOk; } + bool IsErr() const { return !bIsOk; } + + const ESimpleEnumType& GetOk() const + { + check(bIsOk); + return OkValue; + } + + const int32& GetErr() const + { + check(!bIsOk); + return ErrValue; + } + + FORCEINLINE bool operator==(const FTestClientResultSimpleEnumInt32& Other) const + { + if (bIsOk != Other.bIsOk) return false; + if (bIsOk) + { + return OkValue == Other.OkValue; + } + else + { + return ErrValue == Other.ErrValue; + } + } + + FORCEINLINE bool operator!=(const FTestClientResultSimpleEnumInt32& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FTestClientResultSimpleEnumInt32. + * Hashes the bIsOk flag and the appropriate value. + * @param Result The FTestClientResultSimpleEnumInt32 instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FTestClientResultSimpleEnumInt32& Result) +{ + uint32 Hash = GetTypeHash(Result.bIsOk); + if (Result.bIsOk) + { + Hash = HashCombine(Hash, GetTypeHash(Result.OkValue)); + } + else + { + Hash = HashCombine(Hash, GetTypeHash(Result.ErrValue)); + } + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FTestClientResultSimpleEnumInt32); + + UE_SPACETIMEDB_RESULT(FTestClientResultSimpleEnumInt32, bIsOk, OkValue, ErrValue); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultStringInt32.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultStringInt32.g.h new file mode 100644 index 00000000000..b1df79a3245 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultStringInt32.g.h @@ -0,0 +1,100 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "TestClientResultStringInt32.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTCLIENT_API FTestClientResultStringInt32 +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + bool bIsOk = false; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB", meta = (EditCondition = "bIsOk")) + FString OkValue; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB", meta = (EditCondition = "!bIsOk")) + int32 ErrValue; + + FTestClientResultStringInt32() = default; + + static FTestClientResultStringInt32 Ok(const FString& InValue) + { + FTestClientResultStringInt32 Result; + Result.bIsOk = true; + Result.OkValue = InValue; + return Result; + } + + static FTestClientResultStringInt32 Err(const int32& InValue) + { + FTestClientResultStringInt32 Result; + Result.bIsOk = false; + Result.ErrValue = InValue; + return Result; + } + + bool IsOk() const { return bIsOk; } + bool IsErr() const { return !bIsOk; } + + const FString& GetOk() const + { + check(bIsOk); + return OkValue; + } + + const int32& GetErr() const + { + check(!bIsOk); + return ErrValue; + } + + FORCEINLINE bool operator==(const FTestClientResultStringInt32& Other) const + { + if (bIsOk != Other.bIsOk) return false; + if (bIsOk) + { + return OkValue == Other.OkValue; + } + else + { + return ErrValue == Other.ErrValue; + } + } + + FORCEINLINE bool operator!=(const FTestClientResultStringInt32& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FTestClientResultStringInt32. + * Hashes the bIsOk flag and the appropriate value. + * @param Result The FTestClientResultStringInt32 instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FTestClientResultStringInt32& Result) +{ + uint32 Hash = GetTypeHash(Result.bIsOk); + if (Result.bIsOk) + { + Hash = HashCombine(Hash, GetTypeHash(Result.OkValue)); + } + else + { + Hash = HashCombine(Hash, GetTypeHash(Result.ErrValue)); + } + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FTestClientResultStringInt32); + + UE_SPACETIMEDB_RESULT(FTestClientResultStringInt32, bIsOk, OkValue, ErrValue); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultVecInt32String.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultVecInt32String.g.h new file mode 100644 index 00000000000..92cc0108bd6 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Results/TestClientResultVecInt32String.g.h @@ -0,0 +1,100 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "TestClientResultVecInt32String.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTCLIENT_API FTestClientResultVecInt32String +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + bool bIsOk = false; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB", meta = (EditCondition = "bIsOk")) + TArray OkValue; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB", meta = (EditCondition = "!bIsOk")) + FString ErrValue; + + FTestClientResultVecInt32String() = default; + + static FTestClientResultVecInt32String Ok(const TArray& InValue) + { + FTestClientResultVecInt32String Result; + Result.bIsOk = true; + Result.OkValue = InValue; + return Result; + } + + static FTestClientResultVecInt32String Err(const FString& InValue) + { + FTestClientResultVecInt32String Result; + Result.bIsOk = false; + Result.ErrValue = InValue; + return Result; + } + + bool IsOk() const { return bIsOk; } + bool IsErr() const { return !bIsOk; } + + const TArray& GetOk() const + { + check(bIsOk); + return OkValue; + } + + const FString& GetErr() const + { + check(!bIsOk); + return ErrValue; + } + + FORCEINLINE bool operator==(const FTestClientResultVecInt32String& Other) const + { + if (bIsOk != Other.bIsOk) return false; + if (bIsOk) + { + return OkValue == Other.OkValue; + } + else + { + return ErrValue == Other.ErrValue; + } + } + + FORCEINLINE bool operator!=(const FTestClientResultVecInt32String& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FTestClientResultVecInt32String. + * Hashes the bIsOk flag and the appropriate value. + * @param Result The FTestClientResultVecInt32String instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FTestClientResultVecInt32String& Result) +{ + uint32 Hash = GetTypeHash(Result.bIsOk); + if (Result.bIsOk) + { + Hash = HashCombine(Hash, GetTypeHash(Result.OkValue)); + } + else + { + Hash = HashCombine(Hash, GetTypeHash(Result.ErrValue)); + } + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FTestClientResultVecInt32String); + + UE_SPACETIMEDB_RESULT(FTestClientResultVecInt32String, bIsOk, OkValue, ErrValue); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/SpacetimeDBClient.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/SpacetimeDBClient.g.h index 730afd3974d..d87a51e16d1 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/SpacetimeDBClient.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/SpacetimeDBClient.g.h @@ -1,7 +1,7 @@ // THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE // WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. -// This was generated using spacetimedb cli version 1.8.0 (commit 4d8a5e04dbbe4e58453022d7f69daea291cef863). +// This was generated using spacetimedb cli version 1.11.2 (commit e090367c50e718fe19fbf827206a7516502288a9). #pragma once #include "CoreMinimal.h" @@ -17,6 +17,7 @@ #include "ModuleBindings/Optionals/TestClientOptionalInt32.g.h" #include "ModuleBindings/Optionals/TestClientOptionalSimpleEnum.g.h" #include "ModuleBindings/Optionals/TestClientOptionalString.g.h" +#include "ModuleBindings/Optionals/TestClientOptionalUuid.g.h" #include "ModuleBindings/Optionals/TestClientOptionalVecOptionalInt32.g.h" #include "ModuleBindings/ReducerBase.g.h" #include "ModuleBindings/Reducers/DeleteFromBtreeU32.g.h" @@ -39,6 +40,7 @@ #include "ModuleBindings/Reducers/DeletePkU32Two.g.h" #include "ModuleBindings/Reducers/DeletePkU64.g.h" #include "ModuleBindings/Reducers/DeletePkU8.g.h" +#include "ModuleBindings/Reducers/DeletePkUuid.g.h" #include "ModuleBindings/Reducers/DeleteUniqueBool.g.h" #include "ModuleBindings/Reducers/DeleteUniqueConnectionId.g.h" #include "ModuleBindings/Reducers/DeleteUniqueI128.g.h" @@ -55,7 +57,10 @@ #include "ModuleBindings/Reducers/DeleteUniqueU32.g.h" #include "ModuleBindings/Reducers/DeleteUniqueU64.g.h" #include "ModuleBindings/Reducers/DeleteUniqueU8.g.h" +#include "ModuleBindings/Reducers/DeleteUniqueUuid.g.h" #include "ModuleBindings/Reducers/InsertCallTimestamp.g.h" +#include "ModuleBindings/Reducers/InsertCallUuidV4.g.h" +#include "ModuleBindings/Reducers/InsertCallUuidV7.g.h" #include "ModuleBindings/Reducers/InsertCallerOneConnectionId.g.h" #include "ModuleBindings/Reducers/InsertCallerOneIdentity.g.h" #include "ModuleBindings/Reducers/InsertCallerPkConnectionId.g.h" @@ -93,11 +98,13 @@ #include "ModuleBindings/Reducers/InsertOneU64.g.h" #include "ModuleBindings/Reducers/InsertOneU8.g.h" #include "ModuleBindings/Reducers/InsertOneUnitStruct.g.h" +#include "ModuleBindings/Reducers/InsertOneUuid.g.h" #include "ModuleBindings/Reducers/InsertOptionEveryPrimitiveStruct.g.h" #include "ModuleBindings/Reducers/InsertOptionI32.g.h" #include "ModuleBindings/Reducers/InsertOptionIdentity.g.h" #include "ModuleBindings/Reducers/InsertOptionSimpleEnum.g.h" #include "ModuleBindings/Reducers/InsertOptionString.g.h" +#include "ModuleBindings/Reducers/InsertOptionUuid.g.h" #include "ModuleBindings/Reducers/InsertOptionVecOptionI32.g.h" #include "ModuleBindings/Reducers/InsertPkBool.g.h" #include "ModuleBindings/Reducers/InsertPkConnectionId.g.h" @@ -117,7 +124,14 @@ #include "ModuleBindings/Reducers/InsertPkU32Two.g.h" #include "ModuleBindings/Reducers/InsertPkU64.g.h" #include "ModuleBindings/Reducers/InsertPkU8.g.h" +#include "ModuleBindings/Reducers/InsertPkUuid.g.h" #include "ModuleBindings/Reducers/InsertPrimitivesAsStrings.g.h" +#include "ModuleBindings/Reducers/InsertResultEveryPrimitiveStructString.g.h" +#include "ModuleBindings/Reducers/InsertResultI32String.g.h" +#include "ModuleBindings/Reducers/InsertResultIdentityString.g.h" +#include "ModuleBindings/Reducers/InsertResultSimpleEnumI32.g.h" +#include "ModuleBindings/Reducers/InsertResultStringI32.g.h" +#include "ModuleBindings/Reducers/InsertResultVecI32String.g.h" #include "ModuleBindings/Reducers/InsertTableHoldsTable.g.h" #include "ModuleBindings/Reducers/InsertUniqueBool.g.h" #include "ModuleBindings/Reducers/InsertUniqueConnectionId.g.h" @@ -136,6 +150,7 @@ #include "ModuleBindings/Reducers/InsertUniqueU32UpdatePkU32.g.h" #include "ModuleBindings/Reducers/InsertUniqueU64.g.h" #include "ModuleBindings/Reducers/InsertUniqueU8.g.h" +#include "ModuleBindings/Reducers/InsertUniqueUuid.g.h" #include "ModuleBindings/Reducers/InsertUser.g.h" #include "ModuleBindings/Reducers/InsertVecBool.g.h" #include "ModuleBindings/Reducers/InsertVecByteStruct.g.h" @@ -162,8 +177,10 @@ #include "ModuleBindings/Reducers/InsertVecU64.g.h" #include "ModuleBindings/Reducers/InsertVecU8.g.h" #include "ModuleBindings/Reducers/InsertVecUnitStruct.g.h" +#include "ModuleBindings/Reducers/InsertVecUuid.g.h" #include "ModuleBindings/Reducers/NoOpSucceeds.g.h" #include "ModuleBindings/Reducers/SendScheduledMessage.g.h" +#include "ModuleBindings/Reducers/SortedUuidsInsert.g.h" #include "ModuleBindings/Reducers/UpdateIndexedSimpleEnum.g.h" #include "ModuleBindings/Reducers/UpdatePkBool.g.h" #include "ModuleBindings/Reducers/UpdatePkConnectionId.g.h" @@ -183,6 +200,7 @@ #include "ModuleBindings/Reducers/UpdatePkU32Two.g.h" #include "ModuleBindings/Reducers/UpdatePkU64.g.h" #include "ModuleBindings/Reducers/UpdatePkU8.g.h" +#include "ModuleBindings/Reducers/UpdatePkUuid.g.h" #include "ModuleBindings/Reducers/UpdateUniqueBool.g.h" #include "ModuleBindings/Reducers/UpdateUniqueConnectionId.g.h" #include "ModuleBindings/Reducers/UpdateUniqueI128.g.h" @@ -199,6 +217,13 @@ #include "ModuleBindings/Reducers/UpdateUniqueU32.g.h" #include "ModuleBindings/Reducers/UpdateUniqueU64.g.h" #include "ModuleBindings/Reducers/UpdateUniqueU8.g.h" +#include "ModuleBindings/Reducers/UpdateUniqueUuid.g.h" +#include "ModuleBindings/Results/TestClientResultEveryPrimitiveStructString.g.h" +#include "ModuleBindings/Results/TestClientResultIdentityString.g.h" +#include "ModuleBindings/Results/TestClientResultInt32String.g.h" +#include "ModuleBindings/Results/TestClientResultSimpleEnumInt32.g.h" +#include "ModuleBindings/Results/TestClientResultStringInt32.g.h" +#include "ModuleBindings/Results/TestClientResultVecInt32String.g.h" #include "ModuleBindings/Types/BTreeU32Type.g.h" #include "ModuleBindings/Types/ByteStructType.g.h" #include "ModuleBindings/Types/EnumWithPayloadType.g.h" @@ -217,6 +242,7 @@ class UDbConnection; class URemoteTables; class URemoteReducers; +class URemoteProcedures; class USubscriptionBuilder; class USubscriptionHandle; @@ -251,11 +277,13 @@ class UOneU32Table; class UOneU64Table; class UOneU8Table; class UOneUnitStructTable; +class UOneUuidTable; class UOptionEveryPrimitiveStructTable; class UOptionI32Table; class UOptionIdentityTable; class UOptionSimpleEnumTable; class UOptionStringTable; +class UOptionUuidTable; class UOptionVecOptionI32Table; class UPkBoolTable; class UPkConnectionIdTable; @@ -275,6 +303,13 @@ class UPkU32Table; class UPkU32TwoTable; class UPkU64Table; class UPkU8Table; +class UPkUuidTable; +class UResultEveryPrimitiveStructStringTable; +class UResultI32StringTable; +class UResultIdentityStringTable; +class UResultSimpleEnumI32Table; +class UResultStringI32Table; +class UResultVecI32StringTable; class UScheduledTableTable; class UTableHoldsTableTable; class UUniqueBoolTable; @@ -293,6 +328,7 @@ class UUniqueU256Table; class UUniqueU32Table; class UUniqueU64Table; class UUniqueU8Table; +class UUniqueUuidTable; class UUsersTable; class UVecBoolTable; class UVecByteStructTable; @@ -319,6 +355,7 @@ class UVecU32Table; class UVecU64Table; class UVecU8Table; class UVecUnitStructTable; +class UVecUuidTable; /***/ // Delegates using the generated connection type. These wrap the base @@ -343,7 +380,7 @@ struct TESTCLIENT_API FContextBase { GENERATED_BODY() - FContextBase() : Db(nullptr), Reducers(nullptr), SetReducerFlags(nullptr), Conn(nullptr) {}; + FContextBase() : Db(nullptr), Reducers(nullptr), SetReducerFlags(nullptr), Procedures(nullptr), Conn(nullptr) {}; FContextBase(UDbConnection* InConn); UPROPERTY(BlueprintReadOnly, Category = "SpacetimeDB") @@ -355,6 +392,9 @@ struct TESTCLIENT_API FContextBase UPROPERTY(BlueprintReadOnly, Category = "SpacetimeDB") USetReducerFlags* SetReducerFlags; + UPROPERTY(BlueprintReadOnly, Category = "SpacetimeDB") + URemoteProcedures* Procedures; + bool IsActive() const; void Disconnect(); bool TryGetIdentity(FSpacetimeDBIdentity& OutIdentity) const; @@ -382,6 +422,8 @@ class TESTCLIENT_API UContextBaseBpLib : public UBlueprintFunctionLibrary UFUNCTION(BlueprintPure, Category="SpacetimeDB") static USetReducerFlags* GetSetReducerFlags(const FContextBase& Ctx) { return Ctx.SetReducerFlags; } + static URemoteProcedures* GetProcedures(const FContextBase& Ctx) { return Ctx.Procedures; } + UFUNCTION(BlueprintPure, Category="SpacetimeDB") static bool IsActive(const FContextBase& Ctx) { return Ctx.IsActive(); } }; @@ -409,6 +451,7 @@ enum class EReducerTag : uint8 DeletePkU32Two, DeletePkU64, DeletePkU8, + DeletePkUuid, DeleteUniqueBool, DeleteUniqueConnectionId, DeleteUniqueI128, @@ -425,7 +468,10 @@ enum class EReducerTag : uint8 DeleteUniqueU32, DeleteUniqueU64, DeleteUniqueU8, + DeleteUniqueUuid, InsertCallTimestamp, + InsertCallUuidV4, + InsertCallUuidV7, InsertCallerOneConnectionId, InsertCallerOneIdentity, InsertCallerPkConnectionId, @@ -463,11 +509,13 @@ enum class EReducerTag : uint8 InsertOneU64, InsertOneU8, InsertOneUnitStruct, + InsertOneUuid, InsertOptionEveryPrimitiveStruct, InsertOptionI32, InsertOptionIdentity, InsertOptionSimpleEnum, InsertOptionString, + InsertOptionUuid, InsertOptionVecOptionI32, InsertPkBool, InsertPkConnectionId, @@ -487,7 +535,14 @@ enum class EReducerTag : uint8 InsertPkU32Two, InsertPkU64, InsertPkU8, + InsertPkUuid, InsertPrimitivesAsStrings, + InsertResultEveryPrimitiveStructString, + InsertResultI32String, + InsertResultIdentityString, + InsertResultSimpleEnumI32, + InsertResultStringI32, + InsertResultVecI32String, InsertTableHoldsTable, InsertUniqueBool, InsertUniqueConnectionId, @@ -506,6 +561,7 @@ enum class EReducerTag : uint8 InsertUniqueU32UpdatePkU32, InsertUniqueU64, InsertUniqueU8, + InsertUniqueUuid, InsertUser, InsertVecBool, InsertVecByteStruct, @@ -532,8 +588,10 @@ enum class EReducerTag : uint8 InsertVecU64, InsertVecU8, InsertVecUnitStruct, + InsertVecUuid, NoOpSucceeds, SendScheduledMessage, + SortedUuidsInsert, UpdateIndexedSimpleEnum, UpdatePkBool, UpdatePkConnectionId, @@ -553,6 +611,7 @@ enum class EReducerTag : uint8 UpdatePkU32Two, UpdatePkU64, UpdatePkU8, + UpdatePkUuid, UpdateUniqueBool, UpdateUniqueConnectionId, UpdateUniqueI128, @@ -568,7 +627,8 @@ enum class EReducerTag : uint8 UpdateUniqueU256, UpdateUniqueU32, UpdateUniqueU64, - UpdateUniqueU8 + UpdateUniqueU8, + UpdateUniqueUuid }; USTRUCT(BlueprintType) @@ -580,7 +640,7 @@ struct TESTCLIENT_API FReducer UPROPERTY(BlueprintReadOnly, Category = "SpacetimeDB") EReducerTag Tag = static_cast(0); - TVariant Data; + TVariant Data; // Optional metadata UPROPERTY(BlueprintReadOnly, Category = "SpacetimeDB") @@ -908,6 +968,22 @@ struct TESTCLIENT_API FReducer return Data.Get(); } + static FReducer DeletePkUuid(const FDeletePkUuidArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::DeletePkUuid; + Out.Data.Set(Value); + Out.ReducerName = TEXT("delete_pk_uuid"); + return Out; + } + + FORCEINLINE bool IsDeletePkUuid() const { return Tag == EReducerTag::DeletePkUuid; } + FORCEINLINE FDeletePkUuidArgs GetAsDeletePkUuid() const + { + ensureMsgf(IsDeletePkUuid(), TEXT("Reducer does not hold DeletePkUuid!")); + return Data.Get(); + } + static FReducer DeleteUniqueBool(const FDeleteUniqueBoolArgs& Value) { FReducer Out; @@ -1164,6 +1240,22 @@ struct TESTCLIENT_API FReducer return Data.Get(); } + static FReducer DeleteUniqueUuid(const FDeleteUniqueUuidArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::DeleteUniqueUuid; + Out.Data.Set(Value); + Out.ReducerName = TEXT("delete_unique_uuid"); + return Out; + } + + FORCEINLINE bool IsDeleteUniqueUuid() const { return Tag == EReducerTag::DeleteUniqueUuid; } + FORCEINLINE FDeleteUniqueUuidArgs GetAsDeleteUniqueUuid() const + { + ensureMsgf(IsDeleteUniqueUuid(), TEXT("Reducer does not hold DeleteUniqueUuid!")); + return Data.Get(); + } + static FReducer InsertCallTimestamp(const FInsertCallTimestampArgs& Value) { FReducer Out; @@ -1180,6 +1272,38 @@ struct TESTCLIENT_API FReducer return Data.Get(); } + static FReducer InsertCallUuidV4(const FInsertCallUuidV4Args& Value) + { + FReducer Out; + Out.Tag = EReducerTag::InsertCallUuidV4; + Out.Data.Set(Value); + Out.ReducerName = TEXT("insert_call_uuid_v4"); + return Out; + } + + FORCEINLINE bool IsInsertCallUuidV4() const { return Tag == EReducerTag::InsertCallUuidV4; } + FORCEINLINE FInsertCallUuidV4Args GetAsInsertCallUuidV4() const + { + ensureMsgf(IsInsertCallUuidV4(), TEXT("Reducer does not hold InsertCallUuidV4!")); + return Data.Get(); + } + + static FReducer InsertCallUuidV7(const FInsertCallUuidV7Args& Value) + { + FReducer Out; + Out.Tag = EReducerTag::InsertCallUuidV7; + Out.Data.Set(Value); + Out.ReducerName = TEXT("insert_call_uuid_v7"); + return Out; + } + + FORCEINLINE bool IsInsertCallUuidV7() const { return Tag == EReducerTag::InsertCallUuidV7; } + FORCEINLINE FInsertCallUuidV7Args GetAsInsertCallUuidV7() const + { + ensureMsgf(IsInsertCallUuidV7(), TEXT("Reducer does not hold InsertCallUuidV7!")); + return Data.Get(); + } + static FReducer InsertCallerOneConnectionId(const FInsertCallerOneConnectionIdArgs& Value) { FReducer Out; @@ -1772,6 +1896,22 @@ struct TESTCLIENT_API FReducer return Data.Get(); } + static FReducer InsertOneUuid(const FInsertOneUuidArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::InsertOneUuid; + Out.Data.Set(Value); + Out.ReducerName = TEXT("insert_one_uuid"); + return Out; + } + + FORCEINLINE bool IsInsertOneUuid() const { return Tag == EReducerTag::InsertOneUuid; } + FORCEINLINE FInsertOneUuidArgs GetAsInsertOneUuid() const + { + ensureMsgf(IsInsertOneUuid(), TEXT("Reducer does not hold InsertOneUuid!")); + return Data.Get(); + } + static FReducer InsertOptionEveryPrimitiveStruct(const FInsertOptionEveryPrimitiveStructArgs& Value) { FReducer Out; @@ -1852,6 +1992,22 @@ struct TESTCLIENT_API FReducer return Data.Get(); } + static FReducer InsertOptionUuid(const FInsertOptionUuidArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::InsertOptionUuid; + Out.Data.Set(Value); + Out.ReducerName = TEXT("insert_option_uuid"); + return Out; + } + + FORCEINLINE bool IsInsertOptionUuid() const { return Tag == EReducerTag::InsertOptionUuid; } + FORCEINLINE FInsertOptionUuidArgs GetAsInsertOptionUuid() const + { + ensureMsgf(IsInsertOptionUuid(), TEXT("Reducer does not hold InsertOptionUuid!")); + return Data.Get(); + } + static FReducer InsertOptionVecOptionI32(const FInsertOptionVecOptionI32Args& Value) { FReducer Out; @@ -2156,6 +2312,22 @@ struct TESTCLIENT_API FReducer return Data.Get(); } + static FReducer InsertPkUuid(const FInsertPkUuidArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::InsertPkUuid; + Out.Data.Set(Value); + Out.ReducerName = TEXT("insert_pk_uuid"); + return Out; + } + + FORCEINLINE bool IsInsertPkUuid() const { return Tag == EReducerTag::InsertPkUuid; } + FORCEINLINE FInsertPkUuidArgs GetAsInsertPkUuid() const + { + ensureMsgf(IsInsertPkUuid(), TEXT("Reducer does not hold InsertPkUuid!")); + return Data.Get(); + } + static FReducer InsertPrimitivesAsStrings(const FInsertPrimitivesAsStringsArgs& Value) { FReducer Out; @@ -2172,6 +2344,102 @@ struct TESTCLIENT_API FReducer return Data.Get(); } + static FReducer InsertResultEveryPrimitiveStructString(const FInsertResultEveryPrimitiveStructStringArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::InsertResultEveryPrimitiveStructString; + Out.Data.Set(Value); + Out.ReducerName = TEXT("insert_result_every_primitive_struct_string"); + return Out; + } + + FORCEINLINE bool IsInsertResultEveryPrimitiveStructString() const { return Tag == EReducerTag::InsertResultEveryPrimitiveStructString; } + FORCEINLINE FInsertResultEveryPrimitiveStructStringArgs GetAsInsertResultEveryPrimitiveStructString() const + { + ensureMsgf(IsInsertResultEveryPrimitiveStructString(), TEXT("Reducer does not hold InsertResultEveryPrimitiveStructString!")); + return Data.Get(); + } + + static FReducer InsertResultI32String(const FInsertResultI32StringArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::InsertResultI32String; + Out.Data.Set(Value); + Out.ReducerName = TEXT("insert_result_i32_string"); + return Out; + } + + FORCEINLINE bool IsInsertResultI32String() const { return Tag == EReducerTag::InsertResultI32String; } + FORCEINLINE FInsertResultI32StringArgs GetAsInsertResultI32String() const + { + ensureMsgf(IsInsertResultI32String(), TEXT("Reducer does not hold InsertResultI32String!")); + return Data.Get(); + } + + static FReducer InsertResultIdentityString(const FInsertResultIdentityStringArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::InsertResultIdentityString; + Out.Data.Set(Value); + Out.ReducerName = TEXT("insert_result_identity_string"); + return Out; + } + + FORCEINLINE bool IsInsertResultIdentityString() const { return Tag == EReducerTag::InsertResultIdentityString; } + FORCEINLINE FInsertResultIdentityStringArgs GetAsInsertResultIdentityString() const + { + ensureMsgf(IsInsertResultIdentityString(), TEXT("Reducer does not hold InsertResultIdentityString!")); + return Data.Get(); + } + + static FReducer InsertResultSimpleEnumI32(const FInsertResultSimpleEnumI32Args& Value) + { + FReducer Out; + Out.Tag = EReducerTag::InsertResultSimpleEnumI32; + Out.Data.Set(Value); + Out.ReducerName = TEXT("insert_result_simple_enum_i32"); + return Out; + } + + FORCEINLINE bool IsInsertResultSimpleEnumI32() const { return Tag == EReducerTag::InsertResultSimpleEnumI32; } + FORCEINLINE FInsertResultSimpleEnumI32Args GetAsInsertResultSimpleEnumI32() const + { + ensureMsgf(IsInsertResultSimpleEnumI32(), TEXT("Reducer does not hold InsertResultSimpleEnumI32!")); + return Data.Get(); + } + + static FReducer InsertResultStringI32(const FInsertResultStringI32Args& Value) + { + FReducer Out; + Out.Tag = EReducerTag::InsertResultStringI32; + Out.Data.Set(Value); + Out.ReducerName = TEXT("insert_result_string_i32"); + return Out; + } + + FORCEINLINE bool IsInsertResultStringI32() const { return Tag == EReducerTag::InsertResultStringI32; } + FORCEINLINE FInsertResultStringI32Args GetAsInsertResultStringI32() const + { + ensureMsgf(IsInsertResultStringI32(), TEXT("Reducer does not hold InsertResultStringI32!")); + return Data.Get(); + } + + static FReducer InsertResultVecI32String(const FInsertResultVecI32StringArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::InsertResultVecI32String; + Out.Data.Set(Value); + Out.ReducerName = TEXT("insert_result_vec_i32_string"); + return Out; + } + + FORCEINLINE bool IsInsertResultVecI32String() const { return Tag == EReducerTag::InsertResultVecI32String; } + FORCEINLINE FInsertResultVecI32StringArgs GetAsInsertResultVecI32String() const + { + ensureMsgf(IsInsertResultVecI32String(), TEXT("Reducer does not hold InsertResultVecI32String!")); + return Data.Get(); + } + static FReducer InsertTableHoldsTable(const FInsertTableHoldsTableArgs& Value) { FReducer Out; @@ -2460,6 +2728,22 @@ struct TESTCLIENT_API FReducer return Data.Get(); } + static FReducer InsertUniqueUuid(const FInsertUniqueUuidArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::InsertUniqueUuid; + Out.Data.Set(Value); + Out.ReducerName = TEXT("insert_unique_uuid"); + return Out; + } + + FORCEINLINE bool IsInsertUniqueUuid() const { return Tag == EReducerTag::InsertUniqueUuid; } + FORCEINLINE FInsertUniqueUuidArgs GetAsInsertUniqueUuid() const + { + ensureMsgf(IsInsertUniqueUuid(), TEXT("Reducer does not hold InsertUniqueUuid!")); + return Data.Get(); + } + static FReducer InsertUser(const FInsertUserArgs& Value) { FReducer Out; @@ -2876,6 +3160,22 @@ struct TESTCLIENT_API FReducer return Data.Get(); } + static FReducer InsertVecUuid(const FInsertVecUuidArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::InsertVecUuid; + Out.Data.Set(Value); + Out.ReducerName = TEXT("insert_vec_uuid"); + return Out; + } + + FORCEINLINE bool IsInsertVecUuid() const { return Tag == EReducerTag::InsertVecUuid; } + FORCEINLINE FInsertVecUuidArgs GetAsInsertVecUuid() const + { + ensureMsgf(IsInsertVecUuid(), TEXT("Reducer does not hold InsertVecUuid!")); + return Data.Get(); + } + static FReducer NoOpSucceeds(const FNoOpSucceedsArgs& Value) { FReducer Out; @@ -2908,6 +3208,22 @@ struct TESTCLIENT_API FReducer return Data.Get(); } + static FReducer SortedUuidsInsert(const FSortedUuidsInsertArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::SortedUuidsInsert; + Out.Data.Set(Value); + Out.ReducerName = TEXT("sorted_uuids_insert"); + return Out; + } + + FORCEINLINE bool IsSortedUuidsInsert() const { return Tag == EReducerTag::SortedUuidsInsert; } + FORCEINLINE FSortedUuidsInsertArgs GetAsSortedUuidsInsert() const + { + ensureMsgf(IsSortedUuidsInsert(), TEXT("Reducer does not hold SortedUuidsInsert!")); + return Data.Get(); + } + static FReducer UpdateIndexedSimpleEnum(const FUpdateIndexedSimpleEnumArgs& Value) { FReducer Out; @@ -3212,6 +3528,22 @@ struct TESTCLIENT_API FReducer return Data.Get(); } + static FReducer UpdatePkUuid(const FUpdatePkUuidArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::UpdatePkUuid; + Out.Data.Set(Value); + Out.ReducerName = TEXT("update_pk_uuid"); + return Out; + } + + FORCEINLINE bool IsUpdatePkUuid() const { return Tag == EReducerTag::UpdatePkUuid; } + FORCEINLINE FUpdatePkUuidArgs GetAsUpdatePkUuid() const + { + ensureMsgf(IsUpdatePkUuid(), TEXT("Reducer does not hold UpdatePkUuid!")); + return Data.Get(); + } + static FReducer UpdateUniqueBool(const FUpdateUniqueBoolArgs& Value) { FReducer Out; @@ -3468,6 +3800,22 @@ struct TESTCLIENT_API FReducer return Data.Get(); } + static FReducer UpdateUniqueUuid(const FUpdateUniqueUuidArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::UpdateUniqueUuid; + Out.Data.Set(Value); + Out.ReducerName = TEXT("update_unique_uuid"); + return Out; + } + + FORCEINLINE bool IsUpdateUniqueUuid() const { return Tag == EReducerTag::UpdateUniqueUuid; } + FORCEINLINE FUpdateUniqueUuidArgs GetAsUpdateUniqueUuid() const + { + ensureMsgf(IsUpdateUniqueUuid(), TEXT("Reducer does not hold UpdateUniqueUuid!")); + return Data.Get(); + } + FORCEINLINE bool operator==(const FReducer& Other) const { if (Tag != Other.Tag || ReducerId != Other.ReducerId || RequestId != Other.RequestId || ReducerName != Other.ReducerName) return false; @@ -3513,6 +3861,8 @@ struct TESTCLIENT_API FReducer return GetAsDeletePkU64() == Other.GetAsDeletePkU64(); case EReducerTag::DeletePkU8: return GetAsDeletePkU8() == Other.GetAsDeletePkU8(); + case EReducerTag::DeletePkUuid: + return GetAsDeletePkUuid() == Other.GetAsDeletePkUuid(); case EReducerTag::DeleteUniqueBool: return GetAsDeleteUniqueBool() == Other.GetAsDeleteUniqueBool(); case EReducerTag::DeleteUniqueConnectionId: @@ -3545,8 +3895,14 @@ struct TESTCLIENT_API FReducer return GetAsDeleteUniqueU64() == Other.GetAsDeleteUniqueU64(); case EReducerTag::DeleteUniqueU8: return GetAsDeleteUniqueU8() == Other.GetAsDeleteUniqueU8(); + case EReducerTag::DeleteUniqueUuid: + return GetAsDeleteUniqueUuid() == Other.GetAsDeleteUniqueUuid(); case EReducerTag::InsertCallTimestamp: return GetAsInsertCallTimestamp() == Other.GetAsInsertCallTimestamp(); + case EReducerTag::InsertCallUuidV4: + return GetAsInsertCallUuidV4() == Other.GetAsInsertCallUuidV4(); + case EReducerTag::InsertCallUuidV7: + return GetAsInsertCallUuidV7() == Other.GetAsInsertCallUuidV7(); case EReducerTag::InsertCallerOneConnectionId: return GetAsInsertCallerOneConnectionId() == Other.GetAsInsertCallerOneConnectionId(); case EReducerTag::InsertCallerOneIdentity: @@ -3621,6 +3977,8 @@ struct TESTCLIENT_API FReducer return GetAsInsertOneU8() == Other.GetAsInsertOneU8(); case EReducerTag::InsertOneUnitStruct: return GetAsInsertOneUnitStruct() == Other.GetAsInsertOneUnitStruct(); + case EReducerTag::InsertOneUuid: + return GetAsInsertOneUuid() == Other.GetAsInsertOneUuid(); case EReducerTag::InsertOptionEveryPrimitiveStruct: return GetAsInsertOptionEveryPrimitiveStruct() == Other.GetAsInsertOptionEveryPrimitiveStruct(); case EReducerTag::InsertOptionI32: @@ -3631,6 +3989,8 @@ struct TESTCLIENT_API FReducer return GetAsInsertOptionSimpleEnum() == Other.GetAsInsertOptionSimpleEnum(); case EReducerTag::InsertOptionString: return GetAsInsertOptionString() == Other.GetAsInsertOptionString(); + case EReducerTag::InsertOptionUuid: + return GetAsInsertOptionUuid() == Other.GetAsInsertOptionUuid(); case EReducerTag::InsertOptionVecOptionI32: return GetAsInsertOptionVecOptionI32() == Other.GetAsInsertOptionVecOptionI32(); case EReducerTag::InsertPkBool: @@ -3669,8 +4029,22 @@ struct TESTCLIENT_API FReducer return GetAsInsertPkU64() == Other.GetAsInsertPkU64(); case EReducerTag::InsertPkU8: return GetAsInsertPkU8() == Other.GetAsInsertPkU8(); + case EReducerTag::InsertPkUuid: + return GetAsInsertPkUuid() == Other.GetAsInsertPkUuid(); case EReducerTag::InsertPrimitivesAsStrings: return GetAsInsertPrimitivesAsStrings() == Other.GetAsInsertPrimitivesAsStrings(); + case EReducerTag::InsertResultEveryPrimitiveStructString: + return GetAsInsertResultEveryPrimitiveStructString() == Other.GetAsInsertResultEveryPrimitiveStructString(); + case EReducerTag::InsertResultI32String: + return GetAsInsertResultI32String() == Other.GetAsInsertResultI32String(); + case EReducerTag::InsertResultIdentityString: + return GetAsInsertResultIdentityString() == Other.GetAsInsertResultIdentityString(); + case EReducerTag::InsertResultSimpleEnumI32: + return GetAsInsertResultSimpleEnumI32() == Other.GetAsInsertResultSimpleEnumI32(); + case EReducerTag::InsertResultStringI32: + return GetAsInsertResultStringI32() == Other.GetAsInsertResultStringI32(); + case EReducerTag::InsertResultVecI32String: + return GetAsInsertResultVecI32String() == Other.GetAsInsertResultVecI32String(); case EReducerTag::InsertTableHoldsTable: return GetAsInsertTableHoldsTable() == Other.GetAsInsertTableHoldsTable(); case EReducerTag::InsertUniqueBool: @@ -3707,6 +4081,8 @@ struct TESTCLIENT_API FReducer return GetAsInsertUniqueU64() == Other.GetAsInsertUniqueU64(); case EReducerTag::InsertUniqueU8: return GetAsInsertUniqueU8() == Other.GetAsInsertUniqueU8(); + case EReducerTag::InsertUniqueUuid: + return GetAsInsertUniqueUuid() == Other.GetAsInsertUniqueUuid(); case EReducerTag::InsertUser: return GetAsInsertUser() == Other.GetAsInsertUser(); case EReducerTag::InsertVecBool: @@ -3759,10 +4135,14 @@ struct TESTCLIENT_API FReducer return GetAsInsertVecU8() == Other.GetAsInsertVecU8(); case EReducerTag::InsertVecUnitStruct: return GetAsInsertVecUnitStruct() == Other.GetAsInsertVecUnitStruct(); + case EReducerTag::InsertVecUuid: + return GetAsInsertVecUuid() == Other.GetAsInsertVecUuid(); case EReducerTag::NoOpSucceeds: return GetAsNoOpSucceeds() == Other.GetAsNoOpSucceeds(); case EReducerTag::SendScheduledMessage: return GetAsSendScheduledMessage() == Other.GetAsSendScheduledMessage(); + case EReducerTag::SortedUuidsInsert: + return GetAsSortedUuidsInsert() == Other.GetAsSortedUuidsInsert(); case EReducerTag::UpdateIndexedSimpleEnum: return GetAsUpdateIndexedSimpleEnum() == Other.GetAsUpdateIndexedSimpleEnum(); case EReducerTag::UpdatePkBool: @@ -3801,6 +4181,8 @@ struct TESTCLIENT_API FReducer return GetAsUpdatePkU64() == Other.GetAsUpdatePkU64(); case EReducerTag::UpdatePkU8: return GetAsUpdatePkU8() == Other.GetAsUpdatePkU8(); + case EReducerTag::UpdatePkUuid: + return GetAsUpdatePkUuid() == Other.GetAsUpdatePkUuid(); case EReducerTag::UpdateUniqueBool: return GetAsUpdateUniqueBool() == Other.GetAsUpdateUniqueBool(); case EReducerTag::UpdateUniqueConnectionId: @@ -3833,6 +4215,8 @@ struct TESTCLIENT_API FReducer return GetAsUpdateUniqueU64() == Other.GetAsUpdateUniqueU64(); case EReducerTag::UpdateUniqueU8: return GetAsUpdateUniqueU8() == Other.GetAsUpdateUniqueU8(); + case EReducerTag::UpdateUniqueUuid: + return GetAsUpdateUniqueUuid() == Other.GetAsUpdateUniqueUuid(); default: return false; } } @@ -4106,6 +4490,19 @@ class TESTCLIENT_API UReducerBpLib : public UBlueprintFunctionLibrary return Reducer.GetAsDeletePkU8(); } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer DeletePkUuid(const FDeletePkUuidArgs& Value) { + return FReducer::DeletePkUuid(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsDeletePkUuid(const FReducer& Reducer) { return Reducer.IsDeletePkUuid(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FDeletePkUuidArgs GetAsDeletePkUuid(const FReducer& Reducer) { + return Reducer.GetAsDeletePkUuid(); + } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") static FReducer DeleteUniqueBool(const FDeleteUniqueBoolArgs& Value) { return FReducer::DeleteUniqueBool(Value); @@ -4314,6 +4711,19 @@ class TESTCLIENT_API UReducerBpLib : public UBlueprintFunctionLibrary return Reducer.GetAsDeleteUniqueU8(); } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer DeleteUniqueUuid(const FDeleteUniqueUuidArgs& Value) { + return FReducer::DeleteUniqueUuid(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsDeleteUniqueUuid(const FReducer& Reducer) { return Reducer.IsDeleteUniqueUuid(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FDeleteUniqueUuidArgs GetAsDeleteUniqueUuid(const FReducer& Reducer) { + return Reducer.GetAsDeleteUniqueUuid(); + } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") static FReducer InsertCallTimestamp(const FInsertCallTimestampArgs& Value) { return FReducer::InsertCallTimestamp(Value); @@ -4327,6 +4737,32 @@ class TESTCLIENT_API UReducerBpLib : public UBlueprintFunctionLibrary return Reducer.GetAsInsertCallTimestamp(); } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer InsertCallUuidV4(const FInsertCallUuidV4Args& Value) { + return FReducer::InsertCallUuidV4(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsInsertCallUuidV4(const FReducer& Reducer) { return Reducer.IsInsertCallUuidV4(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FInsertCallUuidV4Args GetAsInsertCallUuidV4(const FReducer& Reducer) { + return Reducer.GetAsInsertCallUuidV4(); + } + + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer InsertCallUuidV7(const FInsertCallUuidV7Args& Value) { + return FReducer::InsertCallUuidV7(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsInsertCallUuidV7(const FReducer& Reducer) { return Reducer.IsInsertCallUuidV7(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FInsertCallUuidV7Args GetAsInsertCallUuidV7(const FReducer& Reducer) { + return Reducer.GetAsInsertCallUuidV7(); + } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") static FReducer InsertCallerOneConnectionId(const FInsertCallerOneConnectionIdArgs& Value) { return FReducer::InsertCallerOneConnectionId(Value); @@ -4808,6 +5244,19 @@ class TESTCLIENT_API UReducerBpLib : public UBlueprintFunctionLibrary return Reducer.GetAsInsertOneUnitStruct(); } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer InsertOneUuid(const FInsertOneUuidArgs& Value) { + return FReducer::InsertOneUuid(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsInsertOneUuid(const FReducer& Reducer) { return Reducer.IsInsertOneUuid(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FInsertOneUuidArgs GetAsInsertOneUuid(const FReducer& Reducer) { + return Reducer.GetAsInsertOneUuid(); + } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") static FReducer InsertOptionEveryPrimitiveStruct(const FInsertOptionEveryPrimitiveStructArgs& Value) { return FReducer::InsertOptionEveryPrimitiveStruct(Value); @@ -4873,6 +5322,19 @@ class TESTCLIENT_API UReducerBpLib : public UBlueprintFunctionLibrary return Reducer.GetAsInsertOptionString(); } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer InsertOptionUuid(const FInsertOptionUuidArgs& Value) { + return FReducer::InsertOptionUuid(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsInsertOptionUuid(const FReducer& Reducer) { return Reducer.IsInsertOptionUuid(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FInsertOptionUuidArgs GetAsInsertOptionUuid(const FReducer& Reducer) { + return Reducer.GetAsInsertOptionUuid(); + } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") static FReducer InsertOptionVecOptionI32(const FInsertOptionVecOptionI32Args& Value) { return FReducer::InsertOptionVecOptionI32(Value); @@ -5120,6 +5582,19 @@ class TESTCLIENT_API UReducerBpLib : public UBlueprintFunctionLibrary return Reducer.GetAsInsertPkU8(); } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer InsertPkUuid(const FInsertPkUuidArgs& Value) { + return FReducer::InsertPkUuid(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsInsertPkUuid(const FReducer& Reducer) { return Reducer.IsInsertPkUuid(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FInsertPkUuidArgs GetAsInsertPkUuid(const FReducer& Reducer) { + return Reducer.GetAsInsertPkUuid(); + } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") static FReducer InsertPrimitivesAsStrings(const FInsertPrimitivesAsStringsArgs& Value) { return FReducer::InsertPrimitivesAsStrings(Value); @@ -5133,6 +5608,84 @@ class TESTCLIENT_API UReducerBpLib : public UBlueprintFunctionLibrary return Reducer.GetAsInsertPrimitivesAsStrings(); } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer InsertResultEveryPrimitiveStructString(const FInsertResultEveryPrimitiveStructStringArgs& Value) { + return FReducer::InsertResultEveryPrimitiveStructString(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsInsertResultEveryPrimitiveStructString(const FReducer& Reducer) { return Reducer.IsInsertResultEveryPrimitiveStructString(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FInsertResultEveryPrimitiveStructStringArgs GetAsInsertResultEveryPrimitiveStructString(const FReducer& Reducer) { + return Reducer.GetAsInsertResultEveryPrimitiveStructString(); + } + + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer InsertResultI32String(const FInsertResultI32StringArgs& Value) { + return FReducer::InsertResultI32String(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsInsertResultI32String(const FReducer& Reducer) { return Reducer.IsInsertResultI32String(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FInsertResultI32StringArgs GetAsInsertResultI32String(const FReducer& Reducer) { + return Reducer.GetAsInsertResultI32String(); + } + + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer InsertResultIdentityString(const FInsertResultIdentityStringArgs& Value) { + return FReducer::InsertResultIdentityString(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsInsertResultIdentityString(const FReducer& Reducer) { return Reducer.IsInsertResultIdentityString(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FInsertResultIdentityStringArgs GetAsInsertResultIdentityString(const FReducer& Reducer) { + return Reducer.GetAsInsertResultIdentityString(); + } + + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer InsertResultSimpleEnumI32(const FInsertResultSimpleEnumI32Args& Value) { + return FReducer::InsertResultSimpleEnumI32(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsInsertResultSimpleEnumI32(const FReducer& Reducer) { return Reducer.IsInsertResultSimpleEnumI32(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FInsertResultSimpleEnumI32Args GetAsInsertResultSimpleEnumI32(const FReducer& Reducer) { + return Reducer.GetAsInsertResultSimpleEnumI32(); + } + + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer InsertResultStringI32(const FInsertResultStringI32Args& Value) { + return FReducer::InsertResultStringI32(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsInsertResultStringI32(const FReducer& Reducer) { return Reducer.IsInsertResultStringI32(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FInsertResultStringI32Args GetAsInsertResultStringI32(const FReducer& Reducer) { + return Reducer.GetAsInsertResultStringI32(); + } + + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer InsertResultVecI32String(const FInsertResultVecI32StringArgs& Value) { + return FReducer::InsertResultVecI32String(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsInsertResultVecI32String(const FReducer& Reducer) { return Reducer.IsInsertResultVecI32String(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FInsertResultVecI32StringArgs GetAsInsertResultVecI32String(const FReducer& Reducer) { + return Reducer.GetAsInsertResultVecI32String(); + } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") static FReducer InsertTableHoldsTable(const FInsertTableHoldsTableArgs& Value) { return FReducer::InsertTableHoldsTable(Value); @@ -5368,16 +5921,29 @@ class TESTCLIENT_API UReducerBpLib : public UBlueprintFunctionLibrary } UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") - static FReducer InsertUser(const FInsertUserArgs& Value) { - return FReducer::InsertUser(Value); + static FReducer InsertUniqueUuid(const FInsertUniqueUuidArgs& Value) { + return FReducer::InsertUniqueUuid(Value); } UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") - static bool IsInsertUser(const FReducer& Reducer) { return Reducer.IsInsertUser(); } + static bool IsInsertUniqueUuid(const FReducer& Reducer) { return Reducer.IsInsertUniqueUuid(); } UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") - static FInsertUserArgs GetAsInsertUser(const FReducer& Reducer) { - return Reducer.GetAsInsertUser(); + static FInsertUniqueUuidArgs GetAsInsertUniqueUuid(const FReducer& Reducer) { + return Reducer.GetAsInsertUniqueUuid(); + } + + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer InsertUser(const FInsertUserArgs& Value) { + return FReducer::InsertUser(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsInsertUser(const FReducer& Reducer) { return Reducer.IsInsertUser(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FInsertUserArgs GetAsInsertUser(const FReducer& Reducer) { + return Reducer.GetAsInsertUser(); } UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") @@ -5705,6 +6271,19 @@ class TESTCLIENT_API UReducerBpLib : public UBlueprintFunctionLibrary return Reducer.GetAsInsertVecUnitStruct(); } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer InsertVecUuid(const FInsertVecUuidArgs& Value) { + return FReducer::InsertVecUuid(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsInsertVecUuid(const FReducer& Reducer) { return Reducer.IsInsertVecUuid(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FInsertVecUuidArgs GetAsInsertVecUuid(const FReducer& Reducer) { + return Reducer.GetAsInsertVecUuid(); + } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") static FReducer NoOpSucceeds(const FNoOpSucceedsArgs& Value) { return FReducer::NoOpSucceeds(Value); @@ -5731,6 +6310,19 @@ class TESTCLIENT_API UReducerBpLib : public UBlueprintFunctionLibrary return Reducer.GetAsSendScheduledMessage(); } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer SortedUuidsInsert(const FSortedUuidsInsertArgs& Value) { + return FReducer::SortedUuidsInsert(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsSortedUuidsInsert(const FReducer& Reducer) { return Reducer.IsSortedUuidsInsert(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FSortedUuidsInsertArgs GetAsSortedUuidsInsert(const FReducer& Reducer) { + return Reducer.GetAsSortedUuidsInsert(); + } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") static FReducer UpdateIndexedSimpleEnum(const FUpdateIndexedSimpleEnumArgs& Value) { return FReducer::UpdateIndexedSimpleEnum(Value); @@ -5978,6 +6570,19 @@ class TESTCLIENT_API UReducerBpLib : public UBlueprintFunctionLibrary return Reducer.GetAsUpdatePkU8(); } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer UpdatePkUuid(const FUpdatePkUuidArgs& Value) { + return FReducer::UpdatePkUuid(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsUpdatePkUuid(const FReducer& Reducer) { return Reducer.IsUpdatePkUuid(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FUpdatePkUuidArgs GetAsUpdatePkUuid(const FReducer& Reducer) { + return Reducer.GetAsUpdatePkUuid(); + } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") static FReducer UpdateUniqueBool(const FUpdateUniqueBoolArgs& Value) { return FReducer::UpdateUniqueBool(Value); @@ -6185,6 +6790,19 @@ class TESTCLIENT_API UReducerBpLib : public UBlueprintFunctionLibrary static FUpdateUniqueU8Args GetAsUpdateUniqueU8(const FReducer& Reducer) { return Reducer.GetAsUpdateUniqueU8(); } + + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer UpdateUniqueUuid(const FUpdateUniqueUuidArgs& Value) { + return FReducer::UpdateUniqueUuid(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsUpdateUniqueUuid(const FReducer& Reducer) { return Reducer.IsUpdateUniqueUuid(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FUpdateUniqueUuidArgs GetAsUpdateUniqueUuid(const FReducer& Reducer) { + return Reducer.GetAsUpdateUniqueUuid(); + } }; /** Metadata describing a reducer run. */ @@ -6230,6 +6848,44 @@ struct TESTCLIENT_API FTestClientReducerEvent } }; +// No procedures defined in this module. +/** Metadata describing a procedure run. */ +USTRUCT(BlueprintType) +struct TESTCLIENT_API FTestClientProcedureEvent +{ + GENERATED_BODY() + + /** Timestamp for when the procedure executed */ + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="SpacetimeDB") + FSpacetimeDBTimestamp Timestamp; + + /** Result status of the procedure */ + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="SpacetimeDB") + FSpacetimeDBProcedureStatus Status; + + /** Identity that initiated the call */ + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="SpacetimeDB") + FSpacetimeDBTimeDuration TotalHostExecutionDuration; + + FTestClientProcedureEvent() { + } + FTestClientProcedureEvent(FProcedureEvent Event) { + Timestamp = Event.Timestamp; + Status = FSpacetimeDBProcedureStatus::FromStatus(Event.Status); + TotalHostExecutionDuration = Event.TotalHostExecutionDuration; + } + FORCEINLINE bool operator==(const FTestClientProcedureEvent& Other) const + { + return Status == Other.Status && Timestamp == Other.Timestamp && + TotalHostExecutionDuration == Other.TotalHostExecutionDuration; + } + + FORCEINLINE bool operator!=(const FTestClientProcedureEvent& Other) const + { + return !(*this == Other); + } +}; + /** Represents event with variant message data. */ USTRUCT(BlueprintType) struct TESTCLIENT_API FTestClientEvent @@ -6478,6 +7134,18 @@ struct TESTCLIENT_API FReducerEventContext : public FContextBase FTestClientReducerEvent Event; }; +USTRUCT(BlueprintType) +struct TESTCLIENT_API FProcedureEventContext : public FContextBase +{ + GENERATED_BODY() + + FProcedureEventContext() = default; + FProcedureEventContext(UDbConnection* InConn, FTestClientProcedureEvent InEvent) : FContextBase(InConn), Event(InEvent) {} + + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + FTestClientProcedureEvent Event; +}; + USTRUCT(BlueprintType) struct TESTCLIENT_API FErrorContext : public FContextBase { @@ -6556,6 +7224,8 @@ class TESTCLIENT_API USetReducerFlags : public USetReducerFlagsBase UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void DeletePkU8(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void DeletePkUuid(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void DeleteUniqueBool(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void DeleteUniqueConnectionId(ECallReducerFlags Flag); @@ -6588,8 +7258,14 @@ class TESTCLIENT_API USetReducerFlags : public USetReducerFlagsBase UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void DeleteUniqueU8(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void DeleteUniqueUuid(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertCallTimestamp(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void InsertCallUuidV4(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void InsertCallUuidV7(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertCallerOneConnectionId(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertCallerOneIdentity(ECallReducerFlags Flag); @@ -6664,6 +7340,8 @@ class TESTCLIENT_API USetReducerFlags : public USetReducerFlagsBase UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertOneUnitStruct(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void InsertOneUuid(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertOptionEveryPrimitiveStruct(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertOptionI32(ECallReducerFlags Flag); @@ -6674,6 +7352,8 @@ class TESTCLIENT_API USetReducerFlags : public USetReducerFlagsBase UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertOptionString(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void InsertOptionUuid(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertOptionVecOptionI32(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertPkBool(ECallReducerFlags Flag); @@ -6712,8 +7392,22 @@ class TESTCLIENT_API USetReducerFlags : public USetReducerFlagsBase UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertPkU8(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void InsertPkUuid(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertPrimitivesAsStrings(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void InsertResultEveryPrimitiveStructString(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void InsertResultI32String(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void InsertResultIdentityString(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void InsertResultSimpleEnumI32(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void InsertResultStringI32(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void InsertResultVecI32String(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertTableHoldsTable(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertUniqueBool(ECallReducerFlags Flag); @@ -6750,6 +7444,8 @@ class TESTCLIENT_API USetReducerFlags : public USetReducerFlagsBase UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertUniqueU8(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void InsertUniqueUuid(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertUser(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertVecBool(ECallReducerFlags Flag); @@ -6802,10 +7498,14 @@ class TESTCLIENT_API USetReducerFlags : public USetReducerFlagsBase UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void InsertVecUnitStruct(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void InsertVecUuid(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void NoOpSucceeds(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void SendScheduledMessage(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void SortedUuidsInsert(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void UpdateIndexedSimpleEnum(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void UpdatePkBool(ECallReducerFlags Flag); @@ -6844,6 +7544,8 @@ class TESTCLIENT_API USetReducerFlags : public USetReducerFlagsBase UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void UpdatePkU8(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void UpdatePkUuid(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void UpdateUniqueBool(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void UpdateUniqueConnectionId(ECallReducerFlags Flag); @@ -6875,6 +7577,8 @@ class TESTCLIENT_API USetReducerFlags : public USetReducerFlagsBase void UpdateUniqueU64(ECallReducerFlags Flag); UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") void UpdateUniqueU8(ECallReducerFlags Flag); + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void UpdateUniqueUuid(ECallReducerFlags Flag); }; @@ -6977,6 +7681,9 @@ class TESTCLIENT_API URemoteTables : public UObject UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") UOneUnitStructTable* OneUnitStruct; + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UOneUuidTable* OneUuid; + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") UOptionEveryPrimitiveStructTable* OptionEveryPrimitiveStruct; @@ -6992,6 +7699,9 @@ class TESTCLIENT_API URemoteTables : public UObject UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") UOptionStringTable* OptionString; + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UOptionUuidTable* OptionUuid; + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") UOptionVecOptionI32Table* OptionVecOptionI32; @@ -7049,6 +7759,27 @@ class TESTCLIENT_API URemoteTables : public UObject UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") UPkU8Table* PkU8; + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UPkUuidTable* PkUuid; + + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UResultEveryPrimitiveStructStringTable* ResultEveryPrimitiveStructString; + + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UResultI32StringTable* ResultI32String; + + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UResultIdentityStringTable* ResultIdentityString; + + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UResultSimpleEnumI32Table* ResultSimpleEnumI32; + + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UResultStringI32Table* ResultStringI32; + + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UResultVecI32StringTable* ResultVecI32String; + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") UScheduledTableTable* ScheduledTable; @@ -7103,6 +7834,9 @@ class TESTCLIENT_API URemoteTables : public UObject UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") UUniqueU8Table* UniqueU8; + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UUniqueUuidTable* UniqueUuid; + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") UUsersTable* Users; @@ -7181,6 +7915,9 @@ class TESTCLIENT_API URemoteTables : public UObject UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") UVecUnitStructTable* VecUnitStruct; + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UVecUuidTable* VecUuid; + }; // RemoteReducers class @@ -7203,6 +7940,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteFromBtreeU32(const TArray& Rows); bool InvokeDeleteFromBtreeU32(const FReducerEventContext& Context, const UDeleteFromBtreeU32Reducer* Args); + bool InvokeDeleteFromBtreeU32WithArgs(const FReducerEventContext& Context, const FDeleteFromBtreeU32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteLargeTableHandler, @@ -7216,6 +7954,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteLargeTable(const uint8 A, const uint16 B, const uint32 C, const uint64 D, const FSpacetimeDBUInt128& E, const FSpacetimeDBUInt256& F, const int8 G, const int16 H, const int32 I, const int64 J, const FSpacetimeDBInt128& K, const FSpacetimeDBInt256& L, const bool M, const float N, const double O, const FString& P, const ESimpleEnumType& Q, const FEnumWithPayloadType& R, const FUnitStructType& S, const FByteStructType& T, const FEveryPrimitiveStructType& U, const FEveryVecStructType& V); bool InvokeDeleteLargeTable(const FReducerEventContext& Context, const UDeleteLargeTableReducer* Args); + bool InvokeDeleteLargeTableWithArgs(const FReducerEventContext& Context, const FDeleteLargeTableArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkBoolHandler, @@ -7229,6 +7968,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkBool(const bool B); bool InvokeDeletePkBool(const FReducerEventContext& Context, const UDeletePkBoolReducer* Args); + bool InvokeDeletePkBoolWithArgs(const FReducerEventContext& Context, const FDeletePkBoolArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkConnectionIdHandler, @@ -7242,6 +7982,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkConnectionId(const FSpacetimeDBConnectionId& A); bool InvokeDeletePkConnectionId(const FReducerEventContext& Context, const UDeletePkConnectionIdReducer* Args); + bool InvokeDeletePkConnectionIdWithArgs(const FReducerEventContext& Context, const FDeletePkConnectionIdArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkI128Handler, @@ -7255,6 +7996,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkI128(const FSpacetimeDBInt128& N); bool InvokeDeletePkI128(const FReducerEventContext& Context, const UDeletePkI128Reducer* Args); + bool InvokeDeletePkI128WithArgs(const FReducerEventContext& Context, const FDeletePkI128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkI16Handler, @@ -7268,6 +8010,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkI16(const int16 N); bool InvokeDeletePkI16(const FReducerEventContext& Context, const UDeletePkI16Reducer* Args); + bool InvokeDeletePkI16WithArgs(const FReducerEventContext& Context, const FDeletePkI16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkI256Handler, @@ -7281,6 +8024,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkI256(const FSpacetimeDBInt256& N); bool InvokeDeletePkI256(const FReducerEventContext& Context, const UDeletePkI256Reducer* Args); + bool InvokeDeletePkI256WithArgs(const FReducerEventContext& Context, const FDeletePkI256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkI32Handler, @@ -7294,6 +8038,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkI32(const int32 N); bool InvokeDeletePkI32(const FReducerEventContext& Context, const UDeletePkI32Reducer* Args); + bool InvokeDeletePkI32WithArgs(const FReducerEventContext& Context, const FDeletePkI32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkI64Handler, @@ -7307,6 +8052,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkI64(const int64 N); bool InvokeDeletePkI64(const FReducerEventContext& Context, const UDeletePkI64Reducer* Args); + bool InvokeDeletePkI64WithArgs(const FReducerEventContext& Context, const FDeletePkI64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkI8Handler, @@ -7320,6 +8066,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkI8(const int8 N); bool InvokeDeletePkI8(const FReducerEventContext& Context, const UDeletePkI8Reducer* Args); + bool InvokeDeletePkI8WithArgs(const FReducerEventContext& Context, const FDeletePkI8Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkIdentityHandler, @@ -7333,6 +8080,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkIdentity(const FSpacetimeDBIdentity& I); bool InvokeDeletePkIdentity(const FReducerEventContext& Context, const UDeletePkIdentityReducer* Args); + bool InvokeDeletePkIdentityWithArgs(const FReducerEventContext& Context, const FDeletePkIdentityArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkStringHandler, @@ -7346,6 +8094,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkString(const FString& S); bool InvokeDeletePkString(const FReducerEventContext& Context, const UDeletePkStringReducer* Args); + bool InvokeDeletePkStringWithArgs(const FReducerEventContext& Context, const FDeletePkStringArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkU128Handler, @@ -7359,6 +8108,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkU128(const FSpacetimeDBUInt128& N); bool InvokeDeletePkU128(const FReducerEventContext& Context, const UDeletePkU128Reducer* Args); + bool InvokeDeletePkU128WithArgs(const FReducerEventContext& Context, const FDeletePkU128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkU16Handler, @@ -7372,6 +8122,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkU16(const uint16 N); bool InvokeDeletePkU16(const FReducerEventContext& Context, const UDeletePkU16Reducer* Args); + bool InvokeDeletePkU16WithArgs(const FReducerEventContext& Context, const FDeletePkU16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkU256Handler, @@ -7385,6 +8136,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkU256(const FSpacetimeDBUInt256& N); bool InvokeDeletePkU256(const FReducerEventContext& Context, const UDeletePkU256Reducer* Args); + bool InvokeDeletePkU256WithArgs(const FReducerEventContext& Context, const FDeletePkU256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkU32Handler, @@ -7398,6 +8150,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkU32(const uint32 N); bool InvokeDeletePkU32(const FReducerEventContext& Context, const UDeletePkU32Reducer* Args); + bool InvokeDeletePkU32WithArgs(const FReducerEventContext& Context, const FDeletePkU32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FDeletePkU32InsertPkU32TwoHandler, @@ -7412,6 +8165,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkU32InsertPkU32Two(const uint32 N, const int32 Data); bool InvokeDeletePkU32InsertPkU32Two(const FReducerEventContext& Context, const UDeletePkU32InsertPkU32TwoReducer* Args); + bool InvokeDeletePkU32InsertPkU32TwoWithArgs(const FReducerEventContext& Context, const FDeletePkU32InsertPkU32TwoArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkU32TwoHandler, @@ -7425,6 +8179,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkU32Two(const uint32 N); bool InvokeDeletePkU32Two(const FReducerEventContext& Context, const UDeletePkU32TwoReducer* Args); + bool InvokeDeletePkU32TwoWithArgs(const FReducerEventContext& Context, const FDeletePkU32TwoArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkU64Handler, @@ -7438,6 +8193,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkU64(const uint64 N); bool InvokeDeletePkU64(const FReducerEventContext& Context, const UDeletePkU64Reducer* Args); + bool InvokeDeletePkU64WithArgs(const FReducerEventContext& Context, const FDeletePkU64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeletePkU8Handler, @@ -7451,6 +8207,21 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeletePkU8(const uint8 N); bool InvokeDeletePkU8(const FReducerEventContext& Context, const UDeletePkU8Reducer* Args); + bool InvokeDeletePkU8WithArgs(const FReducerEventContext& Context, const FDeletePkU8Args& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FDeletePkUuidHandler, + const FReducerEventContext&, Context, + const FSpacetimeDBUuid&, U + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FDeletePkUuidHandler OnDeletePkUuid; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void DeletePkUuid(const FSpacetimeDBUuid& U); + + bool InvokeDeletePkUuid(const FReducerEventContext& Context, const UDeletePkUuidReducer* Args); + bool InvokeDeletePkUuidWithArgs(const FReducerEventContext& Context, const FDeletePkUuidArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueBoolHandler, @@ -7464,6 +8235,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueBool(const bool B); bool InvokeDeleteUniqueBool(const FReducerEventContext& Context, const UDeleteUniqueBoolReducer* Args); + bool InvokeDeleteUniqueBoolWithArgs(const FReducerEventContext& Context, const FDeleteUniqueBoolArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueConnectionIdHandler, @@ -7477,6 +8249,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueConnectionId(const FSpacetimeDBConnectionId& A); bool InvokeDeleteUniqueConnectionId(const FReducerEventContext& Context, const UDeleteUniqueConnectionIdReducer* Args); + bool InvokeDeleteUniqueConnectionIdWithArgs(const FReducerEventContext& Context, const FDeleteUniqueConnectionIdArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueI128Handler, @@ -7490,6 +8263,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueI128(const FSpacetimeDBInt128& N); bool InvokeDeleteUniqueI128(const FReducerEventContext& Context, const UDeleteUniqueI128Reducer* Args); + bool InvokeDeleteUniqueI128WithArgs(const FReducerEventContext& Context, const FDeleteUniqueI128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueI16Handler, @@ -7503,6 +8277,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueI16(const int16 N); bool InvokeDeleteUniqueI16(const FReducerEventContext& Context, const UDeleteUniqueI16Reducer* Args); + bool InvokeDeleteUniqueI16WithArgs(const FReducerEventContext& Context, const FDeleteUniqueI16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueI256Handler, @@ -7516,6 +8291,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueI256(const FSpacetimeDBInt256& N); bool InvokeDeleteUniqueI256(const FReducerEventContext& Context, const UDeleteUniqueI256Reducer* Args); + bool InvokeDeleteUniqueI256WithArgs(const FReducerEventContext& Context, const FDeleteUniqueI256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueI32Handler, @@ -7529,6 +8305,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueI32(const int32 N); bool InvokeDeleteUniqueI32(const FReducerEventContext& Context, const UDeleteUniqueI32Reducer* Args); + bool InvokeDeleteUniqueI32WithArgs(const FReducerEventContext& Context, const FDeleteUniqueI32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueI64Handler, @@ -7542,6 +8319,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueI64(const int64 N); bool InvokeDeleteUniqueI64(const FReducerEventContext& Context, const UDeleteUniqueI64Reducer* Args); + bool InvokeDeleteUniqueI64WithArgs(const FReducerEventContext& Context, const FDeleteUniqueI64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueI8Handler, @@ -7555,6 +8333,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueI8(const int8 N); bool InvokeDeleteUniqueI8(const FReducerEventContext& Context, const UDeleteUniqueI8Reducer* Args); + bool InvokeDeleteUniqueI8WithArgs(const FReducerEventContext& Context, const FDeleteUniqueI8Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueIdentityHandler, @@ -7568,6 +8347,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueIdentity(const FSpacetimeDBIdentity& I); bool InvokeDeleteUniqueIdentity(const FReducerEventContext& Context, const UDeleteUniqueIdentityReducer* Args); + bool InvokeDeleteUniqueIdentityWithArgs(const FReducerEventContext& Context, const FDeleteUniqueIdentityArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueStringHandler, @@ -7581,6 +8361,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueString(const FString& S); bool InvokeDeleteUniqueString(const FReducerEventContext& Context, const UDeleteUniqueStringReducer* Args); + bool InvokeDeleteUniqueStringWithArgs(const FReducerEventContext& Context, const FDeleteUniqueStringArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueU128Handler, @@ -7594,6 +8375,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueU128(const FSpacetimeDBUInt128& N); bool InvokeDeleteUniqueU128(const FReducerEventContext& Context, const UDeleteUniqueU128Reducer* Args); + bool InvokeDeleteUniqueU128WithArgs(const FReducerEventContext& Context, const FDeleteUniqueU128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueU16Handler, @@ -7607,6 +8389,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueU16(const uint16 N); bool InvokeDeleteUniqueU16(const FReducerEventContext& Context, const UDeleteUniqueU16Reducer* Args); + bool InvokeDeleteUniqueU16WithArgs(const FReducerEventContext& Context, const FDeleteUniqueU16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueU256Handler, @@ -7620,6 +8403,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueU256(const FSpacetimeDBUInt256& N); bool InvokeDeleteUniqueU256(const FReducerEventContext& Context, const UDeleteUniqueU256Reducer* Args); + bool InvokeDeleteUniqueU256WithArgs(const FReducerEventContext& Context, const FDeleteUniqueU256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueU32Handler, @@ -7633,6 +8417,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueU32(const uint32 N); bool InvokeDeleteUniqueU32(const FReducerEventContext& Context, const UDeleteUniqueU32Reducer* Args); + bool InvokeDeleteUniqueU32WithArgs(const FReducerEventContext& Context, const FDeleteUniqueU32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueU64Handler, @@ -7646,6 +8431,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueU64(const uint64 N); bool InvokeDeleteUniqueU64(const FReducerEventContext& Context, const UDeleteUniqueU64Reducer* Args); + bool InvokeDeleteUniqueU64WithArgs(const FReducerEventContext& Context, const FDeleteUniqueU64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FDeleteUniqueU8Handler, @@ -7659,6 +8445,21 @@ class TESTCLIENT_API URemoteReducers : public UObject void DeleteUniqueU8(const uint8 N); bool InvokeDeleteUniqueU8(const FReducerEventContext& Context, const UDeleteUniqueU8Reducer* Args); + bool InvokeDeleteUniqueU8WithArgs(const FReducerEventContext& Context, const FDeleteUniqueU8Args& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FDeleteUniqueUuidHandler, + const FReducerEventContext&, Context, + const FSpacetimeDBUuid&, U + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FDeleteUniqueUuidHandler OnDeleteUniqueUuid; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void DeleteUniqueUuid(const FSpacetimeDBUuid& U); + + bool InvokeDeleteUniqueUuid(const FReducerEventContext& Context, const UDeleteUniqueUuidReducer* Args); + bool InvokeDeleteUniqueUuidWithArgs(const FReducerEventContext& Context, const FDeleteUniqueUuidArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam( FInsertCallTimestampHandler, @@ -7671,6 +8472,33 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertCallTimestamp(); bool InvokeInsertCallTimestamp(const FReducerEventContext& Context, const UInsertCallTimestampReducer* Args); + bool InvokeInsertCallTimestampWithArgs(const FReducerEventContext& Context, const FInsertCallTimestampArgs& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam( + FInsertCallUuidV4Handler, + const FReducerEventContext&, Context + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FInsertCallUuidV4Handler OnInsertCallUuidV4; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void InsertCallUuidV4(); + + bool InvokeInsertCallUuidV4(const FReducerEventContext& Context, const UInsertCallUuidV4Reducer* Args); + bool InvokeInsertCallUuidV4WithArgs(const FReducerEventContext& Context, const FInsertCallUuidV4Args& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam( + FInsertCallUuidV7Handler, + const FReducerEventContext&, Context + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FInsertCallUuidV7Handler OnInsertCallUuidV7; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void InsertCallUuidV7(); + + bool InvokeInsertCallUuidV7(const FReducerEventContext& Context, const UInsertCallUuidV7Reducer* Args); + bool InvokeInsertCallUuidV7WithArgs(const FReducerEventContext& Context, const FInsertCallUuidV7Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam( FInsertCallerOneConnectionIdHandler, @@ -7683,6 +8511,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertCallerOneConnectionId(); bool InvokeInsertCallerOneConnectionId(const FReducerEventContext& Context, const UInsertCallerOneConnectionIdReducer* Args); + bool InvokeInsertCallerOneConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertCallerOneConnectionIdArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam( FInsertCallerOneIdentityHandler, @@ -7695,6 +8524,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertCallerOneIdentity(); bool InvokeInsertCallerOneIdentity(const FReducerEventContext& Context, const UInsertCallerOneIdentityReducer* Args); + bool InvokeInsertCallerOneIdentityWithArgs(const FReducerEventContext& Context, const FInsertCallerOneIdentityArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertCallerPkConnectionIdHandler, @@ -7708,6 +8538,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertCallerPkConnectionId(const int32 Data); bool InvokeInsertCallerPkConnectionId(const FReducerEventContext& Context, const UInsertCallerPkConnectionIdReducer* Args); + bool InvokeInsertCallerPkConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertCallerPkConnectionIdArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertCallerPkIdentityHandler, @@ -7721,6 +8552,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertCallerPkIdentity(const int32 Data); bool InvokeInsertCallerPkIdentity(const FReducerEventContext& Context, const UInsertCallerPkIdentityReducer* Args); + bool InvokeInsertCallerPkIdentityWithArgs(const FReducerEventContext& Context, const FInsertCallerPkIdentityArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertCallerUniqueConnectionIdHandler, @@ -7734,6 +8566,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertCallerUniqueConnectionId(const int32 Data); bool InvokeInsertCallerUniqueConnectionId(const FReducerEventContext& Context, const UInsertCallerUniqueConnectionIdReducer* Args); + bool InvokeInsertCallerUniqueConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertCallerUniqueConnectionIdArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertCallerUniqueIdentityHandler, @@ -7747,6 +8580,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertCallerUniqueIdentity(const int32 Data); bool InvokeInsertCallerUniqueIdentity(const FReducerEventContext& Context, const UInsertCallerUniqueIdentityReducer* Args); + bool InvokeInsertCallerUniqueIdentityWithArgs(const FReducerEventContext& Context, const FInsertCallerUniqueIdentityArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam( FInsertCallerVecConnectionIdHandler, @@ -7759,6 +8593,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertCallerVecConnectionId(); bool InvokeInsertCallerVecConnectionId(const FReducerEventContext& Context, const UInsertCallerVecConnectionIdReducer* Args); + bool InvokeInsertCallerVecConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertCallerVecConnectionIdArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam( FInsertCallerVecIdentityHandler, @@ -7771,6 +8606,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertCallerVecIdentity(); bool InvokeInsertCallerVecIdentity(const FReducerEventContext& Context, const UInsertCallerVecIdentityReducer* Args); + bool InvokeInsertCallerVecIdentityWithArgs(const FReducerEventContext& Context, const FInsertCallerVecIdentityArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertIntoBtreeU32Handler, @@ -7784,6 +8620,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertIntoBtreeU32(const TArray& Rows); bool InvokeInsertIntoBtreeU32(const FReducerEventContext& Context, const UInsertIntoBtreeU32Reducer* Args); + bool InvokeInsertIntoBtreeU32WithArgs(const FReducerEventContext& Context, const FInsertIntoBtreeU32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertIntoIndexedSimpleEnumHandler, @@ -7797,6 +8634,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertIntoIndexedSimpleEnum(const ESimpleEnumType& N); bool InvokeInsertIntoIndexedSimpleEnum(const FReducerEventContext& Context, const UInsertIntoIndexedSimpleEnumReducer* Args); + bool InvokeInsertIntoIndexedSimpleEnumWithArgs(const FReducerEventContext& Context, const FInsertIntoIndexedSimpleEnumArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertIntoPkBtreeU32Handler, @@ -7811,6 +8649,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertIntoPkBtreeU32(const TArray& PkU32, const TArray& BtU32); bool InvokeInsertIntoPkBtreeU32(const FReducerEventContext& Context, const UInsertIntoPkBtreeU32Reducer* Args); + bool InvokeInsertIntoPkBtreeU32WithArgs(const FReducerEventContext& Context, const FInsertIntoPkBtreeU32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertLargeTableHandler, @@ -7824,6 +8663,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertLargeTable(const uint8 A, const uint16 B, const uint32 C, const uint64 D, const FSpacetimeDBUInt128& E, const FSpacetimeDBUInt256& F, const int8 G, const int16 H, const int32 I, const int64 J, const FSpacetimeDBInt128& K, const FSpacetimeDBInt256& L, const bool M, const float N, const double O, const FString& P, const ESimpleEnumType& Q, const FEnumWithPayloadType& R, const FUnitStructType& S, const FByteStructType& T, const FEveryPrimitiveStructType& U, const FEveryVecStructType& V); bool InvokeInsertLargeTable(const FReducerEventContext& Context, const UInsertLargeTableReducer* Args); + bool InvokeInsertLargeTableWithArgs(const FReducerEventContext& Context, const FInsertLargeTableArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneBoolHandler, @@ -7837,6 +8677,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneBool(const bool B); bool InvokeInsertOneBool(const FReducerEventContext& Context, const UInsertOneBoolReducer* Args); + bool InvokeInsertOneBoolWithArgs(const FReducerEventContext& Context, const FInsertOneBoolArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneByteStructHandler, @@ -7850,6 +8691,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneByteStruct(const FByteStructType& S); bool InvokeInsertOneByteStruct(const FReducerEventContext& Context, const UInsertOneByteStructReducer* Args); + bool InvokeInsertOneByteStructWithArgs(const FReducerEventContext& Context, const FInsertOneByteStructArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneConnectionIdHandler, @@ -7863,6 +8705,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneConnectionId(const FSpacetimeDBConnectionId& A); bool InvokeInsertOneConnectionId(const FReducerEventContext& Context, const UInsertOneConnectionIdReducer* Args); + bool InvokeInsertOneConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertOneConnectionIdArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneEnumWithPayloadHandler, @@ -7876,6 +8719,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneEnumWithPayload(const FEnumWithPayloadType& E); bool InvokeInsertOneEnumWithPayload(const FReducerEventContext& Context, const UInsertOneEnumWithPayloadReducer* Args); + bool InvokeInsertOneEnumWithPayloadWithArgs(const FReducerEventContext& Context, const FInsertOneEnumWithPayloadArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneEveryPrimitiveStructHandler, @@ -7889,6 +8733,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneEveryPrimitiveStruct(const FEveryPrimitiveStructType& S); bool InvokeInsertOneEveryPrimitiveStruct(const FReducerEventContext& Context, const UInsertOneEveryPrimitiveStructReducer* Args); + bool InvokeInsertOneEveryPrimitiveStructWithArgs(const FReducerEventContext& Context, const FInsertOneEveryPrimitiveStructArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneEveryVecStructHandler, @@ -7902,6 +8747,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneEveryVecStruct(const FEveryVecStructType& S); bool InvokeInsertOneEveryVecStruct(const FReducerEventContext& Context, const UInsertOneEveryVecStructReducer* Args); + bool InvokeInsertOneEveryVecStructWithArgs(const FReducerEventContext& Context, const FInsertOneEveryVecStructArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneF32Handler, @@ -7915,6 +8761,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneF32(const float F); bool InvokeInsertOneF32(const FReducerEventContext& Context, const UInsertOneF32Reducer* Args); + bool InvokeInsertOneF32WithArgs(const FReducerEventContext& Context, const FInsertOneF32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneF64Handler, @@ -7928,6 +8775,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneF64(const double F); bool InvokeInsertOneF64(const FReducerEventContext& Context, const UInsertOneF64Reducer* Args); + bool InvokeInsertOneF64WithArgs(const FReducerEventContext& Context, const FInsertOneF64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneI128Handler, @@ -7941,6 +8789,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneI128(const FSpacetimeDBInt128& N); bool InvokeInsertOneI128(const FReducerEventContext& Context, const UInsertOneI128Reducer* Args); + bool InvokeInsertOneI128WithArgs(const FReducerEventContext& Context, const FInsertOneI128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneI16Handler, @@ -7954,6 +8803,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneI16(const int16 N); bool InvokeInsertOneI16(const FReducerEventContext& Context, const UInsertOneI16Reducer* Args); + bool InvokeInsertOneI16WithArgs(const FReducerEventContext& Context, const FInsertOneI16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneI256Handler, @@ -7967,6 +8817,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneI256(const FSpacetimeDBInt256& N); bool InvokeInsertOneI256(const FReducerEventContext& Context, const UInsertOneI256Reducer* Args); + bool InvokeInsertOneI256WithArgs(const FReducerEventContext& Context, const FInsertOneI256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneI32Handler, @@ -7980,6 +8831,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneI32(const int32 N); bool InvokeInsertOneI32(const FReducerEventContext& Context, const UInsertOneI32Reducer* Args); + bool InvokeInsertOneI32WithArgs(const FReducerEventContext& Context, const FInsertOneI32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneI64Handler, @@ -7993,6 +8845,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneI64(const int64 N); bool InvokeInsertOneI64(const FReducerEventContext& Context, const UInsertOneI64Reducer* Args); + bool InvokeInsertOneI64WithArgs(const FReducerEventContext& Context, const FInsertOneI64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneI8Handler, @@ -8006,6 +8859,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneI8(const int8 N); bool InvokeInsertOneI8(const FReducerEventContext& Context, const UInsertOneI8Reducer* Args); + bool InvokeInsertOneI8WithArgs(const FReducerEventContext& Context, const FInsertOneI8Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneIdentityHandler, @@ -8019,6 +8873,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneIdentity(const FSpacetimeDBIdentity& I); bool InvokeInsertOneIdentity(const FReducerEventContext& Context, const UInsertOneIdentityReducer* Args); + bool InvokeInsertOneIdentityWithArgs(const FReducerEventContext& Context, const FInsertOneIdentityArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneSimpleEnumHandler, @@ -8032,6 +8887,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneSimpleEnum(const ESimpleEnumType& E); bool InvokeInsertOneSimpleEnum(const FReducerEventContext& Context, const UInsertOneSimpleEnumReducer* Args); + bool InvokeInsertOneSimpleEnumWithArgs(const FReducerEventContext& Context, const FInsertOneSimpleEnumArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneStringHandler, @@ -8045,6 +8901,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneString(const FString& S); bool InvokeInsertOneString(const FReducerEventContext& Context, const UInsertOneStringReducer* Args); + bool InvokeInsertOneStringWithArgs(const FReducerEventContext& Context, const FInsertOneStringArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneTimestampHandler, @@ -8058,6 +8915,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneTimestamp(const FSpacetimeDBTimestamp& T); bool InvokeInsertOneTimestamp(const FReducerEventContext& Context, const UInsertOneTimestampReducer* Args); + bool InvokeInsertOneTimestampWithArgs(const FReducerEventContext& Context, const FInsertOneTimestampArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneU128Handler, @@ -8071,6 +8929,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneU128(const FSpacetimeDBUInt128& N); bool InvokeInsertOneU128(const FReducerEventContext& Context, const UInsertOneU128Reducer* Args); + bool InvokeInsertOneU128WithArgs(const FReducerEventContext& Context, const FInsertOneU128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneU16Handler, @@ -8084,6 +8943,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneU16(const uint16 N); bool InvokeInsertOneU16(const FReducerEventContext& Context, const UInsertOneU16Reducer* Args); + bool InvokeInsertOneU16WithArgs(const FReducerEventContext& Context, const FInsertOneU16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneU256Handler, @@ -8097,6 +8957,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneU256(const FSpacetimeDBUInt256& N); bool InvokeInsertOneU256(const FReducerEventContext& Context, const UInsertOneU256Reducer* Args); + bool InvokeInsertOneU256WithArgs(const FReducerEventContext& Context, const FInsertOneU256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneU32Handler, @@ -8110,6 +8971,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneU32(const uint32 N); bool InvokeInsertOneU32(const FReducerEventContext& Context, const UInsertOneU32Reducer* Args); + bool InvokeInsertOneU32WithArgs(const FReducerEventContext& Context, const FInsertOneU32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneU64Handler, @@ -8123,6 +8985,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneU64(const uint64 N); bool InvokeInsertOneU64(const FReducerEventContext& Context, const UInsertOneU64Reducer* Args); + bool InvokeInsertOneU64WithArgs(const FReducerEventContext& Context, const FInsertOneU64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneU8Handler, @@ -8136,6 +8999,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneU8(const uint8 N); bool InvokeInsertOneU8(const FReducerEventContext& Context, const UInsertOneU8Reducer* Args); + bool InvokeInsertOneU8WithArgs(const FReducerEventContext& Context, const FInsertOneU8Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOneUnitStructHandler, @@ -8149,6 +9013,21 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOneUnitStruct(const FUnitStructType& S); bool InvokeInsertOneUnitStruct(const FReducerEventContext& Context, const UInsertOneUnitStructReducer* Args); + bool InvokeInsertOneUnitStructWithArgs(const FReducerEventContext& Context, const FInsertOneUnitStructArgs& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FInsertOneUuidHandler, + const FReducerEventContext&, Context, + const FSpacetimeDBUuid&, U + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FInsertOneUuidHandler OnInsertOneUuid; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void InsertOneUuid(const FSpacetimeDBUuid& U); + + bool InvokeInsertOneUuid(const FReducerEventContext& Context, const UInsertOneUuidReducer* Args); + bool InvokeInsertOneUuidWithArgs(const FReducerEventContext& Context, const FInsertOneUuidArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOptionEveryPrimitiveStructHandler, @@ -8162,6 +9041,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOptionEveryPrimitiveStruct(const FTestClientOptionalEveryPrimitiveStruct& S); bool InvokeInsertOptionEveryPrimitiveStruct(const FReducerEventContext& Context, const UInsertOptionEveryPrimitiveStructReducer* Args); + bool InvokeInsertOptionEveryPrimitiveStructWithArgs(const FReducerEventContext& Context, const FInsertOptionEveryPrimitiveStructArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOptionI32Handler, @@ -8175,6 +9055,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOptionI32(const FTestClientOptionalInt32 N); bool InvokeInsertOptionI32(const FReducerEventContext& Context, const UInsertOptionI32Reducer* Args); + bool InvokeInsertOptionI32WithArgs(const FReducerEventContext& Context, const FInsertOptionI32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOptionIdentityHandler, @@ -8188,6 +9069,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOptionIdentity(const FTestClientOptionalIdentity& I); bool InvokeInsertOptionIdentity(const FReducerEventContext& Context, const UInsertOptionIdentityReducer* Args); + bool InvokeInsertOptionIdentityWithArgs(const FReducerEventContext& Context, const FInsertOptionIdentityArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOptionSimpleEnumHandler, @@ -8201,6 +9083,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOptionSimpleEnum(const FTestClientOptionalSimpleEnum& E); bool InvokeInsertOptionSimpleEnum(const FReducerEventContext& Context, const UInsertOptionSimpleEnumReducer* Args); + bool InvokeInsertOptionSimpleEnumWithArgs(const FReducerEventContext& Context, const FInsertOptionSimpleEnumArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOptionStringHandler, @@ -8214,6 +9097,21 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOptionString(const FTestClientOptionalString& S); bool InvokeInsertOptionString(const FReducerEventContext& Context, const UInsertOptionStringReducer* Args); + bool InvokeInsertOptionStringWithArgs(const FReducerEventContext& Context, const FInsertOptionStringArgs& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FInsertOptionUuidHandler, + const FReducerEventContext&, Context, + const FTestClientOptionalUuid&, U + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FInsertOptionUuidHandler OnInsertOptionUuid; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void InsertOptionUuid(const FTestClientOptionalUuid& U); + + bool InvokeInsertOptionUuid(const FReducerEventContext& Context, const UInsertOptionUuidReducer* Args); + bool InvokeInsertOptionUuidWithArgs(const FReducerEventContext& Context, const FInsertOptionUuidArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertOptionVecOptionI32Handler, @@ -8227,6 +9125,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertOptionVecOptionI32(const FTestClientOptionalVecOptionalInt32& V); bool InvokeInsertOptionVecOptionI32(const FReducerEventContext& Context, const UInsertOptionVecOptionI32Reducer* Args); + bool InvokeInsertOptionVecOptionI32WithArgs(const FReducerEventContext& Context, const FInsertOptionVecOptionI32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkBoolHandler, @@ -8241,6 +9140,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkBool(const bool B, const int32 Data); bool InvokeInsertPkBool(const FReducerEventContext& Context, const UInsertPkBoolReducer* Args); + bool InvokeInsertPkBoolWithArgs(const FReducerEventContext& Context, const FInsertPkBoolArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkConnectionIdHandler, @@ -8255,6 +9155,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkConnectionId(const FSpacetimeDBConnectionId& A, const int32 Data); bool InvokeInsertPkConnectionId(const FReducerEventContext& Context, const UInsertPkConnectionIdReducer* Args); + bool InvokeInsertPkConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertPkConnectionIdArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkI128Handler, @@ -8269,6 +9170,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkI128(const FSpacetimeDBInt128& N, const int32 Data); bool InvokeInsertPkI128(const FReducerEventContext& Context, const UInsertPkI128Reducer* Args); + bool InvokeInsertPkI128WithArgs(const FReducerEventContext& Context, const FInsertPkI128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkI16Handler, @@ -8283,6 +9185,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkI16(const int16 N, const int32 Data); bool InvokeInsertPkI16(const FReducerEventContext& Context, const UInsertPkI16Reducer* Args); + bool InvokeInsertPkI16WithArgs(const FReducerEventContext& Context, const FInsertPkI16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkI256Handler, @@ -8297,6 +9200,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkI256(const FSpacetimeDBInt256& N, const int32 Data); bool InvokeInsertPkI256(const FReducerEventContext& Context, const UInsertPkI256Reducer* Args); + bool InvokeInsertPkI256WithArgs(const FReducerEventContext& Context, const FInsertPkI256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkI32Handler, @@ -8311,6 +9215,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkI32(const int32 N, const int32 Data); bool InvokeInsertPkI32(const FReducerEventContext& Context, const UInsertPkI32Reducer* Args); + bool InvokeInsertPkI32WithArgs(const FReducerEventContext& Context, const FInsertPkI32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkI64Handler, @@ -8325,6 +9230,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkI64(const int64 N, const int32 Data); bool InvokeInsertPkI64(const FReducerEventContext& Context, const UInsertPkI64Reducer* Args); + bool InvokeInsertPkI64WithArgs(const FReducerEventContext& Context, const FInsertPkI64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkI8Handler, @@ -8339,6 +9245,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkI8(const int8 N, const int32 Data); bool InvokeInsertPkI8(const FReducerEventContext& Context, const UInsertPkI8Reducer* Args); + bool InvokeInsertPkI8WithArgs(const FReducerEventContext& Context, const FInsertPkI8Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkIdentityHandler, @@ -8353,6 +9260,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkIdentity(const FSpacetimeDBIdentity& I, const int32 Data); bool InvokeInsertPkIdentity(const FReducerEventContext& Context, const UInsertPkIdentityReducer* Args); + bool InvokeInsertPkIdentityWithArgs(const FReducerEventContext& Context, const FInsertPkIdentityArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkSimpleEnumHandler, @@ -8367,6 +9275,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkSimpleEnum(const ESimpleEnumType& A, const int32 Data); bool InvokeInsertPkSimpleEnum(const FReducerEventContext& Context, const UInsertPkSimpleEnumReducer* Args); + bool InvokeInsertPkSimpleEnumWithArgs(const FReducerEventContext& Context, const FInsertPkSimpleEnumArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkStringHandler, @@ -8381,6 +9290,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkString(const FString& S, const int32 Data); bool InvokeInsertPkString(const FReducerEventContext& Context, const UInsertPkStringReducer* Args); + bool InvokeInsertPkStringWithArgs(const FReducerEventContext& Context, const FInsertPkStringArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkU128Handler, @@ -8395,6 +9305,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkU128(const FSpacetimeDBUInt128& N, const int32 Data); bool InvokeInsertPkU128(const FReducerEventContext& Context, const UInsertPkU128Reducer* Args); + bool InvokeInsertPkU128WithArgs(const FReducerEventContext& Context, const FInsertPkU128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkU16Handler, @@ -8409,6 +9320,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkU16(const uint16 N, const int32 Data); bool InvokeInsertPkU16(const FReducerEventContext& Context, const UInsertPkU16Reducer* Args); + bool InvokeInsertPkU16WithArgs(const FReducerEventContext& Context, const FInsertPkU16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkU256Handler, @@ -8423,6 +9335,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkU256(const FSpacetimeDBUInt256& N, const int32 Data); bool InvokeInsertPkU256(const FReducerEventContext& Context, const UInsertPkU256Reducer* Args); + bool InvokeInsertPkU256WithArgs(const FReducerEventContext& Context, const FInsertPkU256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkU32Handler, @@ -8437,6 +9350,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkU32(const uint32 N, const int32 Data); bool InvokeInsertPkU32(const FReducerEventContext& Context, const UInsertPkU32Reducer* Args); + bool InvokeInsertPkU32WithArgs(const FReducerEventContext& Context, const FInsertPkU32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkU32TwoHandler, @@ -8451,6 +9365,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkU32Two(const uint32 N, const int32 Data); bool InvokeInsertPkU32Two(const FReducerEventContext& Context, const UInsertPkU32TwoReducer* Args); + bool InvokeInsertPkU32TwoWithArgs(const FReducerEventContext& Context, const FInsertPkU32TwoArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkU64Handler, @@ -8465,6 +9380,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkU64(const uint64 N, const int32 Data); bool InvokeInsertPkU64(const FReducerEventContext& Context, const UInsertPkU64Reducer* Args); + bool InvokeInsertPkU64WithArgs(const FReducerEventContext& Context, const FInsertPkU64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertPkU8Handler, @@ -8479,6 +9395,22 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPkU8(const uint8 N, const int32 Data); bool InvokeInsertPkU8(const FReducerEventContext& Context, const UInsertPkU8Reducer* Args); + bool InvokeInsertPkU8WithArgs(const FReducerEventContext& Context, const FInsertPkU8Args& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( + FInsertPkUuidHandler, + const FReducerEventContext&, Context, + const FSpacetimeDBUuid&, U, + int32, Data + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FInsertPkUuidHandler OnInsertPkUuid; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void InsertPkUuid(const FSpacetimeDBUuid& U, const int32 Data); + + bool InvokeInsertPkUuid(const FReducerEventContext& Context, const UInsertPkUuidReducer* Args); + bool InvokeInsertPkUuidWithArgs(const FReducerEventContext& Context, const FInsertPkUuidArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertPrimitivesAsStringsHandler, @@ -8492,6 +9424,91 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertPrimitivesAsStrings(const FEveryPrimitiveStructType& S); bool InvokeInsertPrimitivesAsStrings(const FReducerEventContext& Context, const UInsertPrimitivesAsStringsReducer* Args); + bool InvokeInsertPrimitivesAsStringsWithArgs(const FReducerEventContext& Context, const FInsertPrimitivesAsStringsArgs& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FInsertResultEveryPrimitiveStructStringHandler, + const FReducerEventContext&, Context, + const FTestClientResultEveryPrimitiveStructString&, R + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FInsertResultEveryPrimitiveStructStringHandler OnInsertResultEveryPrimitiveStructString; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void InsertResultEveryPrimitiveStructString(const FTestClientResultEveryPrimitiveStructString& R); + + bool InvokeInsertResultEveryPrimitiveStructString(const FReducerEventContext& Context, const UInsertResultEveryPrimitiveStructStringReducer* Args); + bool InvokeInsertResultEveryPrimitiveStructStringWithArgs(const FReducerEventContext& Context, const FInsertResultEveryPrimitiveStructStringArgs& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FInsertResultI32StringHandler, + const FReducerEventContext&, Context, + const FTestClientResultInt32String&, R + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FInsertResultI32StringHandler OnInsertResultI32String; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void InsertResultI32String(const FTestClientResultInt32String& R); + + bool InvokeInsertResultI32String(const FReducerEventContext& Context, const UInsertResultI32StringReducer* Args); + bool InvokeInsertResultI32StringWithArgs(const FReducerEventContext& Context, const FInsertResultI32StringArgs& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FInsertResultIdentityStringHandler, + const FReducerEventContext&, Context, + const FTestClientResultIdentityString&, R + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FInsertResultIdentityStringHandler OnInsertResultIdentityString; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void InsertResultIdentityString(const FTestClientResultIdentityString& R); + + bool InvokeInsertResultIdentityString(const FReducerEventContext& Context, const UInsertResultIdentityStringReducer* Args); + bool InvokeInsertResultIdentityStringWithArgs(const FReducerEventContext& Context, const FInsertResultIdentityStringArgs& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FInsertResultSimpleEnumI32Handler, + const FReducerEventContext&, Context, + const FTestClientResultSimpleEnumInt32&, R + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FInsertResultSimpleEnumI32Handler OnInsertResultSimpleEnumI32; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void InsertResultSimpleEnumI32(const FTestClientResultSimpleEnumInt32& R); + + bool InvokeInsertResultSimpleEnumI32(const FReducerEventContext& Context, const UInsertResultSimpleEnumI32Reducer* Args); + bool InvokeInsertResultSimpleEnumI32WithArgs(const FReducerEventContext& Context, const FInsertResultSimpleEnumI32Args& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FInsertResultStringI32Handler, + const FReducerEventContext&, Context, + const FTestClientResultStringInt32&, R + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FInsertResultStringI32Handler OnInsertResultStringI32; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void InsertResultStringI32(const FTestClientResultStringInt32& R); + + bool InvokeInsertResultStringI32(const FReducerEventContext& Context, const UInsertResultStringI32Reducer* Args); + bool InvokeInsertResultStringI32WithArgs(const FReducerEventContext& Context, const FInsertResultStringI32Args& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FInsertResultVecI32StringHandler, + const FReducerEventContext&, Context, + const FTestClientResultVecInt32String&, R + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FInsertResultVecI32StringHandler OnInsertResultVecI32String; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void InsertResultVecI32String(const FTestClientResultVecInt32String& R); + + bool InvokeInsertResultVecI32String(const FReducerEventContext& Context, const UInsertResultVecI32StringReducer* Args); + bool InvokeInsertResultVecI32StringWithArgs(const FReducerEventContext& Context, const FInsertResultVecI32StringArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertTableHoldsTableHandler, @@ -8506,6 +9523,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertTableHoldsTable(const FOneU8Type& A, const FVecU8Type& B); bool InvokeInsertTableHoldsTable(const FReducerEventContext& Context, const UInsertTableHoldsTableReducer* Args); + bool InvokeInsertTableHoldsTableWithArgs(const FReducerEventContext& Context, const FInsertTableHoldsTableArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueBoolHandler, @@ -8520,6 +9538,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueBool(const bool B, const int32 Data); bool InvokeInsertUniqueBool(const FReducerEventContext& Context, const UInsertUniqueBoolReducer* Args); + bool InvokeInsertUniqueBoolWithArgs(const FReducerEventContext& Context, const FInsertUniqueBoolArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueConnectionIdHandler, @@ -8534,6 +9553,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueConnectionId(const FSpacetimeDBConnectionId& A, const int32 Data); bool InvokeInsertUniqueConnectionId(const FReducerEventContext& Context, const UInsertUniqueConnectionIdReducer* Args); + bool InvokeInsertUniqueConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertUniqueConnectionIdArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueI128Handler, @@ -8548,6 +9568,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueI128(const FSpacetimeDBInt128& N, const int32 Data); bool InvokeInsertUniqueI128(const FReducerEventContext& Context, const UInsertUniqueI128Reducer* Args); + bool InvokeInsertUniqueI128WithArgs(const FReducerEventContext& Context, const FInsertUniqueI128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueI16Handler, @@ -8562,6 +9583,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueI16(const int16 N, const int32 Data); bool InvokeInsertUniqueI16(const FReducerEventContext& Context, const UInsertUniqueI16Reducer* Args); + bool InvokeInsertUniqueI16WithArgs(const FReducerEventContext& Context, const FInsertUniqueI16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueI256Handler, @@ -8576,6 +9598,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueI256(const FSpacetimeDBInt256& N, const int32 Data); bool InvokeInsertUniqueI256(const FReducerEventContext& Context, const UInsertUniqueI256Reducer* Args); + bool InvokeInsertUniqueI256WithArgs(const FReducerEventContext& Context, const FInsertUniqueI256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueI32Handler, @@ -8590,6 +9613,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueI32(const int32 N, const int32 Data); bool InvokeInsertUniqueI32(const FReducerEventContext& Context, const UInsertUniqueI32Reducer* Args); + bool InvokeInsertUniqueI32WithArgs(const FReducerEventContext& Context, const FInsertUniqueI32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueI64Handler, @@ -8604,6 +9628,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueI64(const int64 N, const int32 Data); bool InvokeInsertUniqueI64(const FReducerEventContext& Context, const UInsertUniqueI64Reducer* Args); + bool InvokeInsertUniqueI64WithArgs(const FReducerEventContext& Context, const FInsertUniqueI64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueI8Handler, @@ -8618,6 +9643,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueI8(const int8 N, const int32 Data); bool InvokeInsertUniqueI8(const FReducerEventContext& Context, const UInsertUniqueI8Reducer* Args); + bool InvokeInsertUniqueI8WithArgs(const FReducerEventContext& Context, const FInsertUniqueI8Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueIdentityHandler, @@ -8632,6 +9658,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueIdentity(const FSpacetimeDBIdentity& I, const int32 Data); bool InvokeInsertUniqueIdentity(const FReducerEventContext& Context, const UInsertUniqueIdentityReducer* Args); + bool InvokeInsertUniqueIdentityWithArgs(const FReducerEventContext& Context, const FInsertUniqueIdentityArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueStringHandler, @@ -8646,6 +9673,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueString(const FString& S, const int32 Data); bool InvokeInsertUniqueString(const FReducerEventContext& Context, const UInsertUniqueStringReducer* Args); + bool InvokeInsertUniqueStringWithArgs(const FReducerEventContext& Context, const FInsertUniqueStringArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueU128Handler, @@ -8660,6 +9688,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueU128(const FSpacetimeDBUInt128& N, const int32 Data); bool InvokeInsertUniqueU128(const FReducerEventContext& Context, const UInsertUniqueU128Reducer* Args); + bool InvokeInsertUniqueU128WithArgs(const FReducerEventContext& Context, const FInsertUniqueU128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueU16Handler, @@ -8674,6 +9703,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueU16(const uint16 N, const int32 Data); bool InvokeInsertUniqueU16(const FReducerEventContext& Context, const UInsertUniqueU16Reducer* Args); + bool InvokeInsertUniqueU16WithArgs(const FReducerEventContext& Context, const FInsertUniqueU16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueU256Handler, @@ -8688,6 +9718,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueU256(const FSpacetimeDBUInt256& N, const int32 Data); bool InvokeInsertUniqueU256(const FReducerEventContext& Context, const UInsertUniqueU256Reducer* Args); + bool InvokeInsertUniqueU256WithArgs(const FReducerEventContext& Context, const FInsertUniqueU256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueU32Handler, @@ -8702,6 +9733,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueU32(const uint32 N, const int32 Data); bool InvokeInsertUniqueU32(const FReducerEventContext& Context, const UInsertUniqueU32Reducer* Args); + bool InvokeInsertUniqueU32WithArgs(const FReducerEventContext& Context, const FInsertUniqueU32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_FourParams( FInsertUniqueU32UpdatePkU32Handler, @@ -8717,6 +9749,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueU32UpdatePkU32(const uint32 N, const int32 DUnique, const int32 DPk); bool InvokeInsertUniqueU32UpdatePkU32(const FReducerEventContext& Context, const UInsertUniqueU32UpdatePkU32Reducer* Args); + bool InvokeInsertUniqueU32UpdatePkU32WithArgs(const FReducerEventContext& Context, const FInsertUniqueU32UpdatePkU32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueU64Handler, @@ -8731,6 +9764,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueU64(const uint64 N, const int32 Data); bool InvokeInsertUniqueU64(const FReducerEventContext& Context, const UInsertUniqueU64Reducer* Args); + bool InvokeInsertUniqueU64WithArgs(const FReducerEventContext& Context, const FInsertUniqueU64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUniqueU8Handler, @@ -8745,6 +9779,22 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUniqueU8(const uint8 N, const int32 Data); bool InvokeInsertUniqueU8(const FReducerEventContext& Context, const UInsertUniqueU8Reducer* Args); + bool InvokeInsertUniqueU8WithArgs(const FReducerEventContext& Context, const FInsertUniqueU8Args& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( + FInsertUniqueUuidHandler, + const FReducerEventContext&, Context, + const FSpacetimeDBUuid&, U, + int32, Data + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FInsertUniqueUuidHandler OnInsertUniqueUuid; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void InsertUniqueUuid(const FSpacetimeDBUuid& U, const int32 Data); + + bool InvokeInsertUniqueUuid(const FReducerEventContext& Context, const UInsertUniqueUuidReducer* Args); + bool InvokeInsertUniqueUuidWithArgs(const FReducerEventContext& Context, const FInsertUniqueUuidArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FInsertUserHandler, @@ -8759,6 +9809,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertUser(const FString& Name, const FSpacetimeDBIdentity& Identity); bool InvokeInsertUser(const FReducerEventContext& Context, const UInsertUserReducer* Args); + bool InvokeInsertUserWithArgs(const FReducerEventContext& Context, const FInsertUserArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecBoolHandler, @@ -8772,6 +9823,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecBool(const TArray& B); bool InvokeInsertVecBool(const FReducerEventContext& Context, const UInsertVecBoolReducer* Args); + bool InvokeInsertVecBoolWithArgs(const FReducerEventContext& Context, const FInsertVecBoolArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecByteStructHandler, @@ -8785,6 +9837,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecByteStruct(const TArray& S); bool InvokeInsertVecByteStruct(const FReducerEventContext& Context, const UInsertVecByteStructReducer* Args); + bool InvokeInsertVecByteStructWithArgs(const FReducerEventContext& Context, const FInsertVecByteStructArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecConnectionIdHandler, @@ -8798,6 +9851,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecConnectionId(const TArray& A); bool InvokeInsertVecConnectionId(const FReducerEventContext& Context, const UInsertVecConnectionIdReducer* Args); + bool InvokeInsertVecConnectionIdWithArgs(const FReducerEventContext& Context, const FInsertVecConnectionIdArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecEnumWithPayloadHandler, @@ -8811,6 +9865,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecEnumWithPayload(const TArray& E); bool InvokeInsertVecEnumWithPayload(const FReducerEventContext& Context, const UInsertVecEnumWithPayloadReducer* Args); + bool InvokeInsertVecEnumWithPayloadWithArgs(const FReducerEventContext& Context, const FInsertVecEnumWithPayloadArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecEveryPrimitiveStructHandler, @@ -8824,6 +9879,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecEveryPrimitiveStruct(const TArray& S); bool InvokeInsertVecEveryPrimitiveStruct(const FReducerEventContext& Context, const UInsertVecEveryPrimitiveStructReducer* Args); + bool InvokeInsertVecEveryPrimitiveStructWithArgs(const FReducerEventContext& Context, const FInsertVecEveryPrimitiveStructArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecEveryVecStructHandler, @@ -8837,6 +9893,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecEveryVecStruct(const TArray& S); bool InvokeInsertVecEveryVecStruct(const FReducerEventContext& Context, const UInsertVecEveryVecStructReducer* Args); + bool InvokeInsertVecEveryVecStructWithArgs(const FReducerEventContext& Context, const FInsertVecEveryVecStructArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecF32Handler, @@ -8850,6 +9907,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecF32(const TArray& F); bool InvokeInsertVecF32(const FReducerEventContext& Context, const UInsertVecF32Reducer* Args); + bool InvokeInsertVecF32WithArgs(const FReducerEventContext& Context, const FInsertVecF32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecF64Handler, @@ -8863,6 +9921,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecF64(const TArray& F); bool InvokeInsertVecF64(const FReducerEventContext& Context, const UInsertVecF64Reducer* Args); + bool InvokeInsertVecF64WithArgs(const FReducerEventContext& Context, const FInsertVecF64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecI128Handler, @@ -8876,6 +9935,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecI128(const TArray& N); bool InvokeInsertVecI128(const FReducerEventContext& Context, const UInsertVecI128Reducer* Args); + bool InvokeInsertVecI128WithArgs(const FReducerEventContext& Context, const FInsertVecI128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecI16Handler, @@ -8889,6 +9949,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecI16(const TArray& N); bool InvokeInsertVecI16(const FReducerEventContext& Context, const UInsertVecI16Reducer* Args); + bool InvokeInsertVecI16WithArgs(const FReducerEventContext& Context, const FInsertVecI16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecI256Handler, @@ -8902,6 +9963,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecI256(const TArray& N); bool InvokeInsertVecI256(const FReducerEventContext& Context, const UInsertVecI256Reducer* Args); + bool InvokeInsertVecI256WithArgs(const FReducerEventContext& Context, const FInsertVecI256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecI32Handler, @@ -8915,6 +9977,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecI32(const TArray& N); bool InvokeInsertVecI32(const FReducerEventContext& Context, const UInsertVecI32Reducer* Args); + bool InvokeInsertVecI32WithArgs(const FReducerEventContext& Context, const FInsertVecI32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecI64Handler, @@ -8928,6 +9991,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecI64(const TArray& N); bool InvokeInsertVecI64(const FReducerEventContext& Context, const UInsertVecI64Reducer* Args); + bool InvokeInsertVecI64WithArgs(const FReducerEventContext& Context, const FInsertVecI64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecI8Handler, @@ -8941,6 +10005,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecI8(const TArray& N); bool InvokeInsertVecI8(const FReducerEventContext& Context, const UInsertVecI8Reducer* Args); + bool InvokeInsertVecI8WithArgs(const FReducerEventContext& Context, const FInsertVecI8Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecIdentityHandler, @@ -8954,6 +10019,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecIdentity(const TArray& I); bool InvokeInsertVecIdentity(const FReducerEventContext& Context, const UInsertVecIdentityReducer* Args); + bool InvokeInsertVecIdentityWithArgs(const FReducerEventContext& Context, const FInsertVecIdentityArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecSimpleEnumHandler, @@ -8967,6 +10033,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecSimpleEnum(const TArray& E); bool InvokeInsertVecSimpleEnum(const FReducerEventContext& Context, const UInsertVecSimpleEnumReducer* Args); + bool InvokeInsertVecSimpleEnumWithArgs(const FReducerEventContext& Context, const FInsertVecSimpleEnumArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecStringHandler, @@ -8980,6 +10047,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecString(const TArray& S); bool InvokeInsertVecString(const FReducerEventContext& Context, const UInsertVecStringReducer* Args); + bool InvokeInsertVecStringWithArgs(const FReducerEventContext& Context, const FInsertVecStringArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecTimestampHandler, @@ -8993,6 +10061,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecTimestamp(const TArray& T); bool InvokeInsertVecTimestamp(const FReducerEventContext& Context, const UInsertVecTimestampReducer* Args); + bool InvokeInsertVecTimestampWithArgs(const FReducerEventContext& Context, const FInsertVecTimestampArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecU128Handler, @@ -9006,6 +10075,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecU128(const TArray& N); bool InvokeInsertVecU128(const FReducerEventContext& Context, const UInsertVecU128Reducer* Args); + bool InvokeInsertVecU128WithArgs(const FReducerEventContext& Context, const FInsertVecU128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecU16Handler, @@ -9019,6 +10089,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecU16(const TArray& N); bool InvokeInsertVecU16(const FReducerEventContext& Context, const UInsertVecU16Reducer* Args); + bool InvokeInsertVecU16WithArgs(const FReducerEventContext& Context, const FInsertVecU16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecU256Handler, @@ -9032,6 +10103,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecU256(const TArray& N); bool InvokeInsertVecU256(const FReducerEventContext& Context, const UInsertVecU256Reducer* Args); + bool InvokeInsertVecU256WithArgs(const FReducerEventContext& Context, const FInsertVecU256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecU32Handler, @@ -9045,6 +10117,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecU32(const TArray& N); bool InvokeInsertVecU32(const FReducerEventContext& Context, const UInsertVecU32Reducer* Args); + bool InvokeInsertVecU32WithArgs(const FReducerEventContext& Context, const FInsertVecU32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecU64Handler, @@ -9058,6 +10131,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecU64(const TArray& N); bool InvokeInsertVecU64(const FReducerEventContext& Context, const UInsertVecU64Reducer* Args); + bool InvokeInsertVecU64WithArgs(const FReducerEventContext& Context, const FInsertVecU64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecU8Handler, @@ -9071,6 +10145,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecU8(const TArray& N); bool InvokeInsertVecU8(const FReducerEventContext& Context, const UInsertVecU8Reducer* Args); + bool InvokeInsertVecU8WithArgs(const FReducerEventContext& Context, const FInsertVecU8Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FInsertVecUnitStructHandler, @@ -9084,6 +10159,21 @@ class TESTCLIENT_API URemoteReducers : public UObject void InsertVecUnitStruct(const TArray& S); bool InvokeInsertVecUnitStruct(const FReducerEventContext& Context, const UInsertVecUnitStructReducer* Args); + bool InvokeInsertVecUnitStructWithArgs(const FReducerEventContext& Context, const FInsertVecUnitStructArgs& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FInsertVecUuidHandler, + const FReducerEventContext&, Context, + const TArray&, U + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FInsertVecUuidHandler OnInsertVecUuid; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void InsertVecUuid(const TArray& U); + + bool InvokeInsertVecUuid(const FReducerEventContext& Context, const UInsertVecUuidReducer* Args); + bool InvokeInsertVecUuidWithArgs(const FReducerEventContext& Context, const FInsertVecUuidArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam( FNoOpSucceedsHandler, @@ -9096,6 +10186,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void NoOpSucceeds(); bool InvokeNoOpSucceeds(const FReducerEventContext& Context, const UNoOpSucceedsReducer* Args); + bool InvokeNoOpSucceedsWithArgs(const FReducerEventContext& Context, const FNoOpSucceedsArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FSendScheduledMessageHandler, @@ -9109,6 +10200,20 @@ class TESTCLIENT_API URemoteReducers : public UObject void SendScheduledMessage(const FScheduledTableType& Arg); bool InvokeSendScheduledMessage(const FReducerEventContext& Context, const USendScheduledMessageReducer* Args); + bool InvokeSendScheduledMessageWithArgs(const FReducerEventContext& Context, const FSendScheduledMessageArgs& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam( + FSortedUuidsInsertHandler, + const FReducerEventContext&, Context + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FSortedUuidsInsertHandler OnSortedUuidsInsert; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void SortedUuidsInsert(); + + bool InvokeSortedUuidsInsert(const FReducerEventContext& Context, const USortedUuidsInsertReducer* Args); + bool InvokeSortedUuidsInsertWithArgs(const FReducerEventContext& Context, const FSortedUuidsInsertArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateIndexedSimpleEnumHandler, @@ -9123,6 +10228,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateIndexedSimpleEnum(const ESimpleEnumType& A, const ESimpleEnumType& B); bool InvokeUpdateIndexedSimpleEnum(const FReducerEventContext& Context, const UUpdateIndexedSimpleEnumReducer* Args); + bool InvokeUpdateIndexedSimpleEnumWithArgs(const FReducerEventContext& Context, const FUpdateIndexedSimpleEnumArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkBoolHandler, @@ -9137,6 +10243,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkBool(const bool B, const int32 Data); bool InvokeUpdatePkBool(const FReducerEventContext& Context, const UUpdatePkBoolReducer* Args); + bool InvokeUpdatePkBoolWithArgs(const FReducerEventContext& Context, const FUpdatePkBoolArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkConnectionIdHandler, @@ -9151,6 +10258,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkConnectionId(const FSpacetimeDBConnectionId& A, const int32 Data); bool InvokeUpdatePkConnectionId(const FReducerEventContext& Context, const UUpdatePkConnectionIdReducer* Args); + bool InvokeUpdatePkConnectionIdWithArgs(const FReducerEventContext& Context, const FUpdatePkConnectionIdArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkI128Handler, @@ -9165,6 +10273,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkI128(const FSpacetimeDBInt128& N, const int32 Data); bool InvokeUpdatePkI128(const FReducerEventContext& Context, const UUpdatePkI128Reducer* Args); + bool InvokeUpdatePkI128WithArgs(const FReducerEventContext& Context, const FUpdatePkI128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkI16Handler, @@ -9179,6 +10288,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkI16(const int16 N, const int32 Data); bool InvokeUpdatePkI16(const FReducerEventContext& Context, const UUpdatePkI16Reducer* Args); + bool InvokeUpdatePkI16WithArgs(const FReducerEventContext& Context, const FUpdatePkI16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkI256Handler, @@ -9193,6 +10303,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkI256(const FSpacetimeDBInt256& N, const int32 Data); bool InvokeUpdatePkI256(const FReducerEventContext& Context, const UUpdatePkI256Reducer* Args); + bool InvokeUpdatePkI256WithArgs(const FReducerEventContext& Context, const FUpdatePkI256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkI32Handler, @@ -9207,6 +10318,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkI32(const int32 N, const int32 Data); bool InvokeUpdatePkI32(const FReducerEventContext& Context, const UUpdatePkI32Reducer* Args); + bool InvokeUpdatePkI32WithArgs(const FReducerEventContext& Context, const FUpdatePkI32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkI64Handler, @@ -9221,6 +10333,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkI64(const int64 N, const int32 Data); bool InvokeUpdatePkI64(const FReducerEventContext& Context, const UUpdatePkI64Reducer* Args); + bool InvokeUpdatePkI64WithArgs(const FReducerEventContext& Context, const FUpdatePkI64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkI8Handler, @@ -9235,6 +10348,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkI8(const int8 N, const int32 Data); bool InvokeUpdatePkI8(const FReducerEventContext& Context, const UUpdatePkI8Reducer* Args); + bool InvokeUpdatePkI8WithArgs(const FReducerEventContext& Context, const FUpdatePkI8Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkIdentityHandler, @@ -9249,6 +10363,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkIdentity(const FSpacetimeDBIdentity& I, const int32 Data); bool InvokeUpdatePkIdentity(const FReducerEventContext& Context, const UUpdatePkIdentityReducer* Args); + bool InvokeUpdatePkIdentityWithArgs(const FReducerEventContext& Context, const FUpdatePkIdentityArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkSimpleEnumHandler, @@ -9263,6 +10378,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkSimpleEnum(const ESimpleEnumType& A, const int32 Data); bool InvokeUpdatePkSimpleEnum(const FReducerEventContext& Context, const UUpdatePkSimpleEnumReducer* Args); + bool InvokeUpdatePkSimpleEnumWithArgs(const FReducerEventContext& Context, const FUpdatePkSimpleEnumArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkStringHandler, @@ -9277,6 +10393,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkString(const FString& S, const int32 Data); bool InvokeUpdatePkString(const FReducerEventContext& Context, const UUpdatePkStringReducer* Args); + bool InvokeUpdatePkStringWithArgs(const FReducerEventContext& Context, const FUpdatePkStringArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkU128Handler, @@ -9291,6 +10408,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkU128(const FSpacetimeDBUInt128& N, const int32 Data); bool InvokeUpdatePkU128(const FReducerEventContext& Context, const UUpdatePkU128Reducer* Args); + bool InvokeUpdatePkU128WithArgs(const FReducerEventContext& Context, const FUpdatePkU128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkU16Handler, @@ -9305,6 +10423,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkU16(const uint16 N, const int32 Data); bool InvokeUpdatePkU16(const FReducerEventContext& Context, const UUpdatePkU16Reducer* Args); + bool InvokeUpdatePkU16WithArgs(const FReducerEventContext& Context, const FUpdatePkU16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkU256Handler, @@ -9319,6 +10438,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkU256(const FSpacetimeDBUInt256& N, const int32 Data); bool InvokeUpdatePkU256(const FReducerEventContext& Context, const UUpdatePkU256Reducer* Args); + bool InvokeUpdatePkU256WithArgs(const FReducerEventContext& Context, const FUpdatePkU256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkU32Handler, @@ -9333,6 +10453,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkU32(const uint32 N, const int32 Data); bool InvokeUpdatePkU32(const FReducerEventContext& Context, const UUpdatePkU32Reducer* Args); + bool InvokeUpdatePkU32WithArgs(const FReducerEventContext& Context, const FUpdatePkU32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkU32TwoHandler, @@ -9347,6 +10468,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkU32Two(const uint32 N, const int32 Data); bool InvokeUpdatePkU32Two(const FReducerEventContext& Context, const UUpdatePkU32TwoReducer* Args); + bool InvokeUpdatePkU32TwoWithArgs(const FReducerEventContext& Context, const FUpdatePkU32TwoArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkU64Handler, @@ -9361,6 +10483,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkU64(const uint64 N, const int32 Data); bool InvokeUpdatePkU64(const FReducerEventContext& Context, const UUpdatePkU64Reducer* Args); + bool InvokeUpdatePkU64WithArgs(const FReducerEventContext& Context, const FUpdatePkU64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdatePkU8Handler, @@ -9375,6 +10498,22 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdatePkU8(const uint8 N, const int32 Data); bool InvokeUpdatePkU8(const FReducerEventContext& Context, const UUpdatePkU8Reducer* Args); + bool InvokeUpdatePkU8WithArgs(const FReducerEventContext& Context, const FUpdatePkU8Args& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( + FUpdatePkUuidHandler, + const FReducerEventContext&, Context, + const FSpacetimeDBUuid&, U, + int32, Data + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FUpdatePkUuidHandler OnUpdatePkUuid; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void UpdatePkUuid(const FSpacetimeDBUuid& U, const int32 Data); + + bool InvokeUpdatePkUuid(const FReducerEventContext& Context, const UUpdatePkUuidReducer* Args); + bool InvokeUpdatePkUuidWithArgs(const FReducerEventContext& Context, const FUpdatePkUuidArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueBoolHandler, @@ -9389,6 +10528,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueBool(const bool B, const int32 Data); bool InvokeUpdateUniqueBool(const FReducerEventContext& Context, const UUpdateUniqueBoolReducer* Args); + bool InvokeUpdateUniqueBoolWithArgs(const FReducerEventContext& Context, const FUpdateUniqueBoolArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueConnectionIdHandler, @@ -9403,6 +10543,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueConnectionId(const FSpacetimeDBConnectionId& A, const int32 Data); bool InvokeUpdateUniqueConnectionId(const FReducerEventContext& Context, const UUpdateUniqueConnectionIdReducer* Args); + bool InvokeUpdateUniqueConnectionIdWithArgs(const FReducerEventContext& Context, const FUpdateUniqueConnectionIdArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueI128Handler, @@ -9417,6 +10558,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueI128(const FSpacetimeDBInt128& N, const int32 Data); bool InvokeUpdateUniqueI128(const FReducerEventContext& Context, const UUpdateUniqueI128Reducer* Args); + bool InvokeUpdateUniqueI128WithArgs(const FReducerEventContext& Context, const FUpdateUniqueI128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueI16Handler, @@ -9431,6 +10573,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueI16(const int16 N, const int32 Data); bool InvokeUpdateUniqueI16(const FReducerEventContext& Context, const UUpdateUniqueI16Reducer* Args); + bool InvokeUpdateUniqueI16WithArgs(const FReducerEventContext& Context, const FUpdateUniqueI16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueI256Handler, @@ -9445,6 +10588,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueI256(const FSpacetimeDBInt256& N, const int32 Data); bool InvokeUpdateUniqueI256(const FReducerEventContext& Context, const UUpdateUniqueI256Reducer* Args); + bool InvokeUpdateUniqueI256WithArgs(const FReducerEventContext& Context, const FUpdateUniqueI256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueI32Handler, @@ -9459,6 +10603,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueI32(const int32 N, const int32 Data); bool InvokeUpdateUniqueI32(const FReducerEventContext& Context, const UUpdateUniqueI32Reducer* Args); + bool InvokeUpdateUniqueI32WithArgs(const FReducerEventContext& Context, const FUpdateUniqueI32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueI64Handler, @@ -9473,6 +10618,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueI64(const int64 N, const int32 Data); bool InvokeUpdateUniqueI64(const FReducerEventContext& Context, const UUpdateUniqueI64Reducer* Args); + bool InvokeUpdateUniqueI64WithArgs(const FReducerEventContext& Context, const FUpdateUniqueI64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueI8Handler, @@ -9487,6 +10633,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueI8(const int8 N, const int32 Data); bool InvokeUpdateUniqueI8(const FReducerEventContext& Context, const UUpdateUniqueI8Reducer* Args); + bool InvokeUpdateUniqueI8WithArgs(const FReducerEventContext& Context, const FUpdateUniqueI8Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueIdentityHandler, @@ -9501,6 +10648,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueIdentity(const FSpacetimeDBIdentity& I, const int32 Data); bool InvokeUpdateUniqueIdentity(const FReducerEventContext& Context, const UUpdateUniqueIdentityReducer* Args); + bool InvokeUpdateUniqueIdentityWithArgs(const FReducerEventContext& Context, const FUpdateUniqueIdentityArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueStringHandler, @@ -9515,6 +10663,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueString(const FString& S, const int32 Data); bool InvokeUpdateUniqueString(const FReducerEventContext& Context, const UUpdateUniqueStringReducer* Args); + bool InvokeUpdateUniqueStringWithArgs(const FReducerEventContext& Context, const FUpdateUniqueStringArgs& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueU128Handler, @@ -9529,6 +10678,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueU128(const FSpacetimeDBUInt128& N, const int32 Data); bool InvokeUpdateUniqueU128(const FReducerEventContext& Context, const UUpdateUniqueU128Reducer* Args); + bool InvokeUpdateUniqueU128WithArgs(const FReducerEventContext& Context, const FUpdateUniqueU128Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueU16Handler, @@ -9543,6 +10693,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueU16(const uint16 N, const int32 Data); bool InvokeUpdateUniqueU16(const FReducerEventContext& Context, const UUpdateUniqueU16Reducer* Args); + bool InvokeUpdateUniqueU16WithArgs(const FReducerEventContext& Context, const FUpdateUniqueU16Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueU256Handler, @@ -9557,6 +10708,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueU256(const FSpacetimeDBUInt256& N, const int32 Data); bool InvokeUpdateUniqueU256(const FReducerEventContext& Context, const UUpdateUniqueU256Reducer* Args); + bool InvokeUpdateUniqueU256WithArgs(const FReducerEventContext& Context, const FUpdateUniqueU256Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueU32Handler, @@ -9571,6 +10723,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueU32(const uint32 N, const int32 Data); bool InvokeUpdateUniqueU32(const FReducerEventContext& Context, const UUpdateUniqueU32Reducer* Args); + bool InvokeUpdateUniqueU32WithArgs(const FReducerEventContext& Context, const FUpdateUniqueU32Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueU64Handler, @@ -9585,6 +10738,7 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueU64(const uint64 N, const int32 Data); bool InvokeUpdateUniqueU64(const FReducerEventContext& Context, const UUpdateUniqueU64Reducer* Args); + bool InvokeUpdateUniqueU64WithArgs(const FReducerEventContext& Context, const FUpdateUniqueU64Args& Args); DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( FUpdateUniqueU8Handler, @@ -9599,6 +10753,22 @@ class TESTCLIENT_API URemoteReducers : public UObject void UpdateUniqueU8(const uint8 N, const int32 Data); bool InvokeUpdateUniqueU8(const FReducerEventContext& Context, const UUpdateUniqueU8Reducer* Args); + bool InvokeUpdateUniqueU8WithArgs(const FReducerEventContext& Context, const FUpdateUniqueU8Args& Args); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( + FUpdateUniqueUuidHandler, + const FReducerEventContext&, Context, + const FSpacetimeDBUuid&, U, + int32, Data + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FUpdateUniqueUuidHandler OnUpdateUniqueUuid; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void UpdateUniqueUuid(const FSpacetimeDBUuid& U, const int32 Data); + + bool InvokeUpdateUniqueUuid(const FReducerEventContext& Context, const UUpdateUniqueUuidReducer* Args); + bool InvokeUpdateUniqueUuidWithArgs(const FReducerEventContext& Context, const FUpdateUniqueUuidArgs& Args); // Internal error handling DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FInternalOnUnhandledReducerError, const FReducerEventContext&, Context, const FString&, Error); @@ -9615,6 +10785,26 @@ class TESTCLIENT_API URemoteReducers : public UObject USetReducerFlags* SetCallReducerFlags; }; +// RemoteProcedures class +UCLASS(BlueprintType) +class TESTCLIENT_API URemoteProcedures : public UObject +{ + GENERATED_BODY() + +public: + + // Internal error handling + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FInternalOnUnhandledProcedureError, const FProcedureEventContext&, Context, const FString&, Error); + FInternalOnUnhandledProcedureError InternalOnUnhandledProcedureError; + +private: + + friend UDbConnection; + + UPROPERTY() + class UDbConnection* Conn; +}; + // SubscriptionBuilder class UCLASS(BlueprintType) class TESTCLIENT_API USubscriptionBuilder : public USubscriptionBuilderBase @@ -9730,6 +10920,9 @@ class TESTCLIENT_API UDbConnection : public UDbConnectionBase UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") USetReducerFlags* SetReducerFlags; + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + URemoteProcedures* Procedures; + // Delegates that allow users to bind with the concrete connection type. FOnConnectDelegate OnConnectDelegate; FOnDisconnectDelegate OnDisconnectDelegate; @@ -9746,10 +10939,15 @@ class TESTCLIENT_API UDbConnection : public UDbConnectionBase UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") FOnUnhandledReducerError OnUnhandledReducerError; + // Error handling + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnUnhandledProcedureError, const FProcedureEventContext&, Context, const FString&, Error); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FOnUnhandledProcedureError OnUnhandledProcedureError; + protected: - // Hook up error handling to reducers + // Hook up error handling to reducers and procedures virtual void PostInitProperties() override; UFUNCTION() @@ -9760,6 +10958,9 @@ class TESTCLIENT_API UDbConnection : public UDbConnectionBase UFUNCTION() void OnUnhandledReducerErrorHandler(const FReducerEventContext& Context, const FString& Error); + UFUNCTION() + void OnUnhandledProcedureErrorHandler(const FProcedureEventContext& Context, const FString& Error); + // Override the DbConnectionBase methods to handle updates and events virtual void DbUpdate(const FDatabaseUpdateType& Update, const FSpacetimeDBEvent& Event) override; @@ -9768,5 +10969,7 @@ class TESTCLIENT_API UDbConnection : public UDbConnectionBase // Override the reducer event failed handler virtual void ReducerEventFailed(const FReducerEvent& Event, const FString ErrorMessage) override; + // Override the procedure event failed handler + virtual void ProcedureEventFailed(const FProcedureEvent& Event, const FString ErrorMessage) override; }; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultEveryPrimitiveStructStringTable.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultEveryPrimitiveStructStringTable.g.h new file mode 100644 index 00000000000..5ddb516f2b1 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultEveryPrimitiveStructStringTable.g.h @@ -0,0 +1,64 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/Builtins.h" +#include "ModuleBindings/Types/ResultEveryPrimitiveStructStringType.g.h" +#include "Tables/RemoteTable.h" +#include "DBCache/WithBsatn.h" +#include "DBCache/TableHandle.h" +#include "DBCache/TableCache.h" +#include "ResultEveryPrimitiveStructStringTable.g.generated.h" + +UCLASS(BlueprintType) +class TESTCLIENT_API UResultEveryPrimitiveStructStringTable : public URemoteTable +{ + GENERATED_BODY() + +public: + void PostInitialize(); + + /** Update function for result_every_primitive_struct_string table*/ + FTableAppliedDiff Update(TArray> InsertsRef, TArray> DeletesRef); + + /** Number of subscribed rows currently in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + int32 Count() const; + + /** Return all subscribed rows in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + TArray Iter() const; + + // Table Events + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnResultEveryPrimitiveStructStringInsert, + const FEventContext&, Context, + const FResultEveryPrimitiveStructStringType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( + FOnResultEveryPrimitiveStructStringUpdate, + const FEventContext&, Context, + const FResultEveryPrimitiveStructStringType&, OldRow, + const FResultEveryPrimitiveStructStringType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnResultEveryPrimitiveStructStringDelete, + const FEventContext&, Context, + const FResultEveryPrimitiveStructStringType&, DeletedRow); + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultEveryPrimitiveStructStringInsert OnInsert; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultEveryPrimitiveStructStringUpdate OnUpdate; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultEveryPrimitiveStructStringDelete OnDelete; + +private: + const FString TableName = TEXT("result_every_primitive_struct_string"); + + TSharedPtr> Data; +}; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultI32StringTable.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultI32StringTable.g.h new file mode 100644 index 00000000000..89b91d58575 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultI32StringTable.g.h @@ -0,0 +1,64 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/Builtins.h" +#include "ModuleBindings/Types/ResultI32StringType.g.h" +#include "Tables/RemoteTable.h" +#include "DBCache/WithBsatn.h" +#include "DBCache/TableHandle.h" +#include "DBCache/TableCache.h" +#include "ResultI32StringTable.g.generated.h" + +UCLASS(BlueprintType) +class TESTCLIENT_API UResultI32StringTable : public URemoteTable +{ + GENERATED_BODY() + +public: + void PostInitialize(); + + /** Update function for result_i32_string table*/ + FTableAppliedDiff Update(TArray> InsertsRef, TArray> DeletesRef); + + /** Number of subscribed rows currently in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + int32 Count() const; + + /** Return all subscribed rows in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + TArray Iter() const; + + // Table Events + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnResultI32StringInsert, + const FEventContext&, Context, + const FResultI32StringType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( + FOnResultI32StringUpdate, + const FEventContext&, Context, + const FResultI32StringType&, OldRow, + const FResultI32StringType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnResultI32StringDelete, + const FEventContext&, Context, + const FResultI32StringType&, DeletedRow); + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultI32StringInsert OnInsert; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultI32StringUpdate OnUpdate; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultI32StringDelete OnDelete; + +private: + const FString TableName = TEXT("result_i32_string"); + + TSharedPtr> Data; +}; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultIdentityStringTable.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultIdentityStringTable.g.h new file mode 100644 index 00000000000..8138a7305aa --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultIdentityStringTable.g.h @@ -0,0 +1,64 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/Builtins.h" +#include "ModuleBindings/Types/ResultIdentityStringType.g.h" +#include "Tables/RemoteTable.h" +#include "DBCache/WithBsatn.h" +#include "DBCache/TableHandle.h" +#include "DBCache/TableCache.h" +#include "ResultIdentityStringTable.g.generated.h" + +UCLASS(BlueprintType) +class TESTCLIENT_API UResultIdentityStringTable : public URemoteTable +{ + GENERATED_BODY() + +public: + void PostInitialize(); + + /** Update function for result_identity_string table*/ + FTableAppliedDiff Update(TArray> InsertsRef, TArray> DeletesRef); + + /** Number of subscribed rows currently in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + int32 Count() const; + + /** Return all subscribed rows in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + TArray Iter() const; + + // Table Events + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnResultIdentityStringInsert, + const FEventContext&, Context, + const FResultIdentityStringType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( + FOnResultIdentityStringUpdate, + const FEventContext&, Context, + const FResultIdentityStringType&, OldRow, + const FResultIdentityStringType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnResultIdentityStringDelete, + const FEventContext&, Context, + const FResultIdentityStringType&, DeletedRow); + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultIdentityStringInsert OnInsert; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultIdentityStringUpdate OnUpdate; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultIdentityStringDelete OnDelete; + +private: + const FString TableName = TEXT("result_identity_string"); + + TSharedPtr> Data; +}; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultSimpleEnumI32Table.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultSimpleEnumI32Table.g.h new file mode 100644 index 00000000000..793cdb36fc6 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultSimpleEnumI32Table.g.h @@ -0,0 +1,64 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/Builtins.h" +#include "ModuleBindings/Types/ResultSimpleEnumI32Type.g.h" +#include "Tables/RemoteTable.h" +#include "DBCache/WithBsatn.h" +#include "DBCache/TableHandle.h" +#include "DBCache/TableCache.h" +#include "ResultSimpleEnumI32Table.g.generated.h" + +UCLASS(BlueprintType) +class TESTCLIENT_API UResultSimpleEnumI32Table : public URemoteTable +{ + GENERATED_BODY() + +public: + void PostInitialize(); + + /** Update function for result_simple_enum_i32 table*/ + FTableAppliedDiff Update(TArray> InsertsRef, TArray> DeletesRef); + + /** Number of subscribed rows currently in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + int32 Count() const; + + /** Return all subscribed rows in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + TArray Iter() const; + + // Table Events + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnResultSimpleEnumI32Insert, + const FEventContext&, Context, + const FResultSimpleEnumI32Type&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( + FOnResultSimpleEnumI32Update, + const FEventContext&, Context, + const FResultSimpleEnumI32Type&, OldRow, + const FResultSimpleEnumI32Type&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnResultSimpleEnumI32Delete, + const FEventContext&, Context, + const FResultSimpleEnumI32Type&, DeletedRow); + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultSimpleEnumI32Insert OnInsert; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultSimpleEnumI32Update OnUpdate; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultSimpleEnumI32Delete OnDelete; + +private: + const FString TableName = TEXT("result_simple_enum_i32"); + + TSharedPtr> Data; +}; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultStringI32Table.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultStringI32Table.g.h new file mode 100644 index 00000000000..f1b5903f9e0 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultStringI32Table.g.h @@ -0,0 +1,64 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/Builtins.h" +#include "ModuleBindings/Types/ResultStringI32Type.g.h" +#include "Tables/RemoteTable.h" +#include "DBCache/WithBsatn.h" +#include "DBCache/TableHandle.h" +#include "DBCache/TableCache.h" +#include "ResultStringI32Table.g.generated.h" + +UCLASS(BlueprintType) +class TESTCLIENT_API UResultStringI32Table : public URemoteTable +{ + GENERATED_BODY() + +public: + void PostInitialize(); + + /** Update function for result_string_i32 table*/ + FTableAppliedDiff Update(TArray> InsertsRef, TArray> DeletesRef); + + /** Number of subscribed rows currently in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + int32 Count() const; + + /** Return all subscribed rows in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + TArray Iter() const; + + // Table Events + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnResultStringI32Insert, + const FEventContext&, Context, + const FResultStringI32Type&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( + FOnResultStringI32Update, + const FEventContext&, Context, + const FResultStringI32Type&, OldRow, + const FResultStringI32Type&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnResultStringI32Delete, + const FEventContext&, Context, + const FResultStringI32Type&, DeletedRow); + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultStringI32Insert OnInsert; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultStringI32Update OnUpdate; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultStringI32Delete OnDelete; + +private: + const FString TableName = TEXT("result_string_i32"); + + TSharedPtr> Data; +}; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultVecI32StringTable.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultVecI32StringTable.g.h new file mode 100644 index 00000000000..cfe2096b6ab --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Tables/ResultVecI32StringTable.g.h @@ -0,0 +1,64 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/Builtins.h" +#include "ModuleBindings/Types/ResultVecI32StringType.g.h" +#include "Tables/RemoteTable.h" +#include "DBCache/WithBsatn.h" +#include "DBCache/TableHandle.h" +#include "DBCache/TableCache.h" +#include "ResultVecI32StringTable.g.generated.h" + +UCLASS(BlueprintType) +class TESTCLIENT_API UResultVecI32StringTable : public URemoteTable +{ + GENERATED_BODY() + +public: + void PostInitialize(); + + /** Update function for result_vec_i32_string table*/ + FTableAppliedDiff Update(TArray> InsertsRef, TArray> DeletesRef); + + /** Number of subscribed rows currently in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + int32 Count() const; + + /** Return all subscribed rows in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + TArray Iter() const; + + // Table Events + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnResultVecI32StringInsert, + const FEventContext&, Context, + const FResultVecI32StringType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( + FOnResultVecI32StringUpdate, + const FEventContext&, Context, + const FResultVecI32StringType&, OldRow, + const FResultVecI32StringType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnResultVecI32StringDelete, + const FEventContext&, Context, + const FResultVecI32StringType&, DeletedRow); + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultVecI32StringInsert OnInsert; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultVecI32StringUpdate OnUpdate; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnResultVecI32StringDelete OnDelete; + +private: + const FString TableName = TEXT("result_vec_i32_string"); + + TSharedPtr> Data; +}; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/EnumWithPayloadType.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/EnumWithPayloadType.g.h index 560693ddb4c..4557262a45c 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/EnumWithPayloadType.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/EnumWithPayloadType.g.h @@ -4,9 +4,9 @@ #pragma once #include "CoreMinimal.h" #include "BSATN/UESpacetimeDB.h" -#include "ModuleBindings/Types/SimpleEnumType.g.h" #include "Kismet/BlueprintFunctionLibrary.h" #include "Types/Builtins.h" +#include "ModuleBindings/Types/SimpleEnumType.g.h" #include "EnumWithPayloadType.g.generated.h" UENUM(BlueprintType) @@ -31,6 +31,7 @@ enum class EEnumWithPayloadTag : uint8 Identity, ConnectionId, Timestamp, + Uuid, Bytes, Ints, Strings, @@ -45,7 +46,7 @@ struct TESTCLIENT_API FEnumWithPayloadType public: FEnumWithPayloadType() = default; - TVariant, uint32, FString, FSpacetimeDBInt128, TArray, uint64, FSpacetimeDBConnectionId, TArray, int64, FSpacetimeDBUInt128, int32, float, int8, uint16, FSpacetimeDBIdentity, FSpacetimeDBUInt256, TArray, bool, FSpacetimeDBTimestamp, uint8, FSpacetimeDBInt256> MessageData; + TVariant, FSpacetimeDBTimestamp, FSpacetimeDBUInt256, TArray, uint8, int64, int16, uint32, uint64, FSpacetimeDBInt256, int32, uint16, FSpacetimeDBIdentity, TArray, int8, float, FSpacetimeDBConnectionId, TArray, FSpacetimeDBInt128, bool> MessageData; UPROPERTY(BlueprintReadOnly) EEnumWithPayloadTag Tag = static_cast(0); @@ -202,6 +203,14 @@ struct TESTCLIENT_API FEnumWithPayloadType return Obj; } + static FEnumWithPayloadType Uuid(const FSpacetimeDBUuid& Value) + { + FEnumWithPayloadType Obj; + Obj.Tag = EEnumWithPayloadTag::Uuid; + Obj.MessageData.Set(Value); + return Obj; + } + static FEnumWithPayloadType Bytes(const TArray& Value) { FEnumWithPayloadType Obj; @@ -386,6 +395,14 @@ struct TESTCLIENT_API FEnumWithPayloadType return MessageData.Get(); } + FORCEINLINE bool IsUuid() const { return Tag == EEnumWithPayloadTag::Uuid; } + + FORCEINLINE FSpacetimeDBUuid GetAsUuid() const + { + ensureMsgf(IsUuid(), TEXT("MessageData does not hold Uuid!")); + return MessageData.Get(); + } + FORCEINLINE bool IsBytes() const { return Tag == EEnumWithPayloadTag::Bytes; } FORCEINLINE TArray GetAsBytes() const @@ -463,6 +480,8 @@ struct TESTCLIENT_API FEnumWithPayloadType return GetAsConnectionId() == Other.GetAsConnectionId(); case EEnumWithPayloadTag::Timestamp: return GetAsTimestamp() == Other.GetAsTimestamp(); + case EEnumWithPayloadTag::Uuid: + return GetAsUuid() == Other.GetAsUuid(); case EEnumWithPayloadTag::Bytes: return GetAsBytes() == Other.GetAsBytes(); case EEnumWithPayloadTag::Ints: @@ -512,6 +531,7 @@ FORCEINLINE uint32 GetTypeHash(const FEnumWithPayloadType& EnumWithPayload) case EEnumWithPayloadTag::Identity: return HashCombine(TagHash, ::GetTypeHash(EnumWithPayload.GetAsIdentity())); case EEnumWithPayloadTag::ConnectionId: return HashCombine(TagHash, ::GetTypeHash(EnumWithPayload.GetAsConnectionId())); case EEnumWithPayloadTag::Timestamp: return HashCombine(TagHash, ::GetTypeHash(EnumWithPayload.GetAsTimestamp())); + case EEnumWithPayloadTag::Uuid: return HashCombine(TagHash, ::GetTypeHash(EnumWithPayload.GetAsUuid())); case EEnumWithPayloadTag::Bytes: return HashCombine(TagHash, ::GetTypeHash(EnumWithPayload.GetAsBytes())); case EEnumWithPayloadTag::Ints: return HashCombine(TagHash, ::GetTypeHash(EnumWithPayload.GetAsInts())); case EEnumWithPayloadTag::Strings: return HashCombine(TagHash, ::GetTypeHash(EnumWithPayload.GetAsStrings())); @@ -547,6 +567,7 @@ namespace UE::SpacetimeDB Identity, FSpacetimeDBIdentity, ConnectionId, FSpacetimeDBConnectionId, Timestamp, FSpacetimeDBTimestamp, + Uuid, FSpacetimeDBUuid, Bytes, TArray, Ints, TArray, Strings, TArray, @@ -845,6 +866,21 @@ class TESTCLIENT_API UEnumWithPayloadBpLib : public UBlueprintFunctionLibrary return InValue.GetAsTimestamp(); } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|EnumWithPayload") + static FEnumWithPayloadType Uuid(const FSpacetimeDBUuid& InValue) + { + return FEnumWithPayloadType::Uuid(InValue); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|EnumWithPayload") + static bool IsUuid(const FEnumWithPayloadType& InValue) { return InValue.IsUuid(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|EnumWithPayload") + static FSpacetimeDBUuid GetAsUuid(const FEnumWithPayloadType& InValue) + { + return InValue.GetAsUuid(); + } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|EnumWithPayload") static FEnumWithPayloadType Bytes(const TArray& InValue) { diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/IndexedSimpleEnumType.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/IndexedSimpleEnumType.g.h index d37a8371a2c..776d7cf7037 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/IndexedSimpleEnumType.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/IndexedSimpleEnumType.g.h @@ -13,7 +13,7 @@ struct TESTCLIENT_API FIndexedSimpleEnumType GENERATED_BODY() UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") - ESimpleEnumType N; + ESimpleEnumType N = ESimpleEnumType::Zero; FORCEINLINE bool operator==(const FIndexedSimpleEnumType& Other) const { diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/LargeTableType.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/LargeTableType.g.h index 35083fecceb..f7c7d2a1159 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/LargeTableType.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/LargeTableType.g.h @@ -67,7 +67,7 @@ struct TESTCLIENT_API FLargeTableType FString P; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") - ESimpleEnumType Q; + ESimpleEnumType Q = ESimpleEnumType::Zero; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") FEnumWithPayloadType R; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/OneSimpleEnumType.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/OneSimpleEnumType.g.h index 420cb2ef7b1..22390556f6d 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/OneSimpleEnumType.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/OneSimpleEnumType.g.h @@ -13,7 +13,7 @@ struct TESTCLIENT_API FOneSimpleEnumType GENERATED_BODY() UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") - ESimpleEnumType E; + ESimpleEnumType E = ESimpleEnumType::Zero; FORCEINLINE bool operator==(const FOneSimpleEnumType& Other) const { diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/PkSimpleEnumType.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/PkSimpleEnumType.g.h index a04e272c23f..19271a5e9b2 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/PkSimpleEnumType.g.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/PkSimpleEnumType.g.h @@ -13,7 +13,7 @@ struct TESTCLIENT_API FPkSimpleEnumType GENERATED_BODY() UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") - ESimpleEnumType A; + ESimpleEnumType A = ESimpleEnumType::Zero; UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") int32 Data = 0; diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultEveryPrimitiveStructStringType.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultEveryPrimitiveStructStringType.g.h new file mode 100644 index 00000000000..beccd2e7a69 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultEveryPrimitiveStructStringType.g.h @@ -0,0 +1,47 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/Results/TestClientResultEveryPrimitiveStructString.g.h" +#include "ModuleBindings/Types/EveryPrimitiveStructType.g.h" +#include "ResultEveryPrimitiveStructStringType.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTCLIENT_API FResultEveryPrimitiveStructStringType +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + FTestClientResultEveryPrimitiveStructString R; + + FORCEINLINE bool operator==(const FResultEveryPrimitiveStructStringType& Other) const + { + return R == Other.R; + } + + FORCEINLINE bool operator!=(const FResultEveryPrimitiveStructStringType& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FResultEveryPrimitiveStructStringType. + * Combines the hashes of all fields that are compared in operator==. + * @param ResultEveryPrimitiveStructStringType The FResultEveryPrimitiveStructStringType instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FResultEveryPrimitiveStructStringType& ResultEveryPrimitiveStructStringType) +{ + uint32 Hash = GetTypeHash(ResultEveryPrimitiveStructStringType.R); + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FResultEveryPrimitiveStructStringType); + + UE_SPACETIMEDB_STRUCT(FResultEveryPrimitiveStructStringType, R); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultI32StringType.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultI32StringType.g.h new file mode 100644 index 00000000000..75c43422865 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultI32StringType.g.h @@ -0,0 +1,46 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/Results/TestClientResultInt32String.g.h" +#include "ResultI32StringType.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTCLIENT_API FResultI32StringType +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + FTestClientResultInt32String R; + + FORCEINLINE bool operator==(const FResultI32StringType& Other) const + { + return R == Other.R; + } + + FORCEINLINE bool operator!=(const FResultI32StringType& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FResultI32StringType. + * Combines the hashes of all fields that are compared in operator==. + * @param ResultI32StringType The FResultI32StringType instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FResultI32StringType& ResultI32StringType) +{ + uint32 Hash = GetTypeHash(ResultI32StringType.R); + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FResultI32StringType); + + UE_SPACETIMEDB_STRUCT(FResultI32StringType, R); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultIdentityStringType.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultIdentityStringType.g.h new file mode 100644 index 00000000000..65c1a874139 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultIdentityStringType.g.h @@ -0,0 +1,47 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/Results/TestClientResultIdentityString.g.h" +#include "Types/Builtins.h" +#include "ResultIdentityStringType.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTCLIENT_API FResultIdentityStringType +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + FTestClientResultIdentityString R; + + FORCEINLINE bool operator==(const FResultIdentityStringType& Other) const + { + return R == Other.R; + } + + FORCEINLINE bool operator!=(const FResultIdentityStringType& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FResultIdentityStringType. + * Combines the hashes of all fields that are compared in operator==. + * @param ResultIdentityStringType The FResultIdentityStringType instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FResultIdentityStringType& ResultIdentityStringType) +{ + uint32 Hash = GetTypeHash(ResultIdentityStringType.R); + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FResultIdentityStringType); + + UE_SPACETIMEDB_STRUCT(FResultIdentityStringType, R); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultSimpleEnumI32Type.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultSimpleEnumI32Type.g.h new file mode 100644 index 00000000000..348a715c1f9 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultSimpleEnumI32Type.g.h @@ -0,0 +1,47 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/Results/TestClientResultSimpleEnumInt32.g.h" +#include "ModuleBindings/Types/SimpleEnumType.g.h" +#include "ResultSimpleEnumI32Type.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTCLIENT_API FResultSimpleEnumI32Type +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + FTestClientResultSimpleEnumInt32 R; + + FORCEINLINE bool operator==(const FResultSimpleEnumI32Type& Other) const + { + return R == Other.R; + } + + FORCEINLINE bool operator!=(const FResultSimpleEnumI32Type& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FResultSimpleEnumI32Type. + * Combines the hashes of all fields that are compared in operator==. + * @param ResultSimpleEnumI32Type The FResultSimpleEnumI32Type instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FResultSimpleEnumI32Type& ResultSimpleEnumI32Type) +{ + uint32 Hash = GetTypeHash(ResultSimpleEnumI32Type.R); + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FResultSimpleEnumI32Type); + + UE_SPACETIMEDB_STRUCT(FResultSimpleEnumI32Type, R); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultStringI32Type.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultStringI32Type.g.h new file mode 100644 index 00000000000..1108b0914e8 --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultStringI32Type.g.h @@ -0,0 +1,46 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/Results/TestClientResultStringInt32.g.h" +#include "ResultStringI32Type.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTCLIENT_API FResultStringI32Type +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + FTestClientResultStringInt32 R; + + FORCEINLINE bool operator==(const FResultStringI32Type& Other) const + { + return R == Other.R; + } + + FORCEINLINE bool operator!=(const FResultStringI32Type& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FResultStringI32Type. + * Combines the hashes of all fields that are compared in operator==. + * @param ResultStringI32Type The FResultStringI32Type instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FResultStringI32Type& ResultStringI32Type) +{ + uint32 Hash = GetTypeHash(ResultStringI32Type.R); + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FResultStringI32Type); + + UE_SPACETIMEDB_STRUCT(FResultStringI32Type, R); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultVecI32StringType.g.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultVecI32StringType.g.h new file mode 100644 index 00000000000..4e19f9c857d --- /dev/null +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/ModuleBindings/Types/ResultVecI32StringType.g.h @@ -0,0 +1,46 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/Results/TestClientResultVecInt32String.g.h" +#include "ResultVecI32StringType.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTCLIENT_API FResultVecI32StringType +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + FTestClientResultVecInt32String R; + + FORCEINLINE bool operator==(const FResultVecI32StringType& Other) const + { + return R == Other.R; + } + + FORCEINLINE bool operator!=(const FResultVecI32StringType& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FResultVecI32StringType. + * Combines the hashes of all fields that are compared in operator==. + * @param ResultVecI32StringType The FResultVecI32StringType instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FResultVecI32StringType& ResultVecI32StringType) +{ + uint32 Hash = GetTypeHash(ResultVecI32StringType.R); + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FResultVecI32StringType); + + UE_SPACETIMEDB_STRUCT(FResultVecI32StringType, R); +} diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/SpacetimeFullClientTests.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/SpacetimeFullClientTests.h index f700b3afda5..02b26831c9f 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/SpacetimeFullClientTests.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/SpacetimeFullClientTests.h @@ -65,6 +65,12 @@ IMPLEMENT_SIMPLE_AUTOMATION_TEST(FInsertVecTest, "SpacetimeDB.TestClient.InsertV IMPLEMENT_SIMPLE_AUTOMATION_TEST(FInsertOptionSomeTest, "SpacetimeDB.TestClient.InsertOptionSomeTest", EAutomationTestFlags::EditorContext | EAutomationTestFlags::EngineFilter) /** Tests inserting none optional types. */ IMPLEMENT_SIMPLE_AUTOMATION_TEST(FInsertOptionNoneTest, "SpacetimeDB.TestClient.InsertOptionNoneTest", EAutomationTestFlags::EditorContext | EAutomationTestFlags::EngineFilter) + +/** Tests inserting Result Ok types. */ +IMPLEMENT_SIMPLE_AUTOMATION_TEST(FInsertResultOkTest, "SpacetimeDB.TestClient.InsertResultOkTest", EAutomationTestFlags::EditorContext | EAutomationTestFlags::EngineFilter) +/** Tests inserting Result Err types. */ +//IMPLEMENT_SIMPLE_AUTOMATION_TEST(FInsertResultErrTest, "SpacetimeDB.TestClient.InsertResultErrTest", EAutomationTestFlags::EditorContext | EAutomationTestFlags::EngineFilter) + /** Tests inserting struct types. */ IMPLEMENT_SIMPLE_AUTOMATION_TEST(FInsertStructTest, "SpacetimeDB.TestClient.InsertStructTest", EAutomationTestFlags::EditorContext | EAutomationTestFlags::EngineFilter) /** Tests inserting simple enum types. */ diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/TestHandler.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/TestHandler.h index 418d2ace99e..45b80ed7dac 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/TestHandler.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/TestHandler.h @@ -386,6 +386,26 @@ class UOptionActionsHandler : public UTestHandler FTestClientOptionalVecOptionalInt32 ExpectedVecOptionI32Type; }; +UCLASS() +class UResultActionsHandler : public UTestHandler +{ + GENERATED_BODY() +public: + UFUNCTION() void OnInsertResultI32String(const FEventContext& Context, const FResultI32StringType& Value); + UFUNCTION() void OnInsertResultStringI32(const FEventContext& Context, const FResultStringI32Type& Value); + UFUNCTION() void OnInsertResultIdentityString(const FEventContext& Context, const FResultIdentityStringType& Value); + UFUNCTION() void OnInsertResultSimpleEnumI32(const FEventContext& Context, const FResultSimpleEnumI32Type& Value); + UFUNCTION() void OnInsertResultEveryPrimitiveStructString(const FEventContext& Context, const FResultEveryPrimitiveStructStringType& Value); + UFUNCTION() void OnInsertResultVecI32String(const FEventContext& Context, const FResultVecI32StringType& Value); + + FTestClientResultInt32String ExpectedResultI32StringType; + FTestClientResultStringInt32 ExpectedResultStringI32Type; + FTestClientResultIdentityString ExpectedResultIdentityStringType; + FTestClientResultSimpleEnumInt32 ExpectedResultSimpleEnumI32Type; + FTestClientResultEveryPrimitiveStructString ExpectedResultEveryPrimitiveStructStringType; + FTestClientResultVecInt32String ExpectedResultVecI32StringType; +}; + UCLASS() class UStructActionsHandler : public UTestHandler { diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/UmbreallaHeaderTypes.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/UmbreallaHeaderTypes.h index fc83193de5e..de5ef6bba90 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/UmbreallaHeaderTypes.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/UmbreallaHeaderTypes.h @@ -57,6 +57,12 @@ #include "ModuleBindings/Types/PkU32Type.g.h" #include "ModuleBindings/Types/PkU64Type.g.h" #include "ModuleBindings/Types/PkU8Type.g.h" +#include "ModuleBindings/Types/ResultEveryPrimitiveStructStringType.g.h" +#include "ModuleBindings/Types/ResultI32StringType.g.h" +#include "ModuleBindings/Types/ResultIdentityStringType.g.h" +#include "ModuleBindings/Types/ResultSimpleEnumI32Type.g.h" +#include "ModuleBindings/Types/ResultStringI32Type.g.h" +#include "ModuleBindings/Types/ResultVecI32StringType.g.h" #include "ModuleBindings/Types/ScheduledTableType.g.h" #include "ModuleBindings/Types/SimpleEnumType.g.h" #include "ModuleBindings/Types/TableHoldsTableType.g.h" diff --git a/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/UmbreallaHeaderaTables.h b/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/UmbreallaHeaderaTables.h index d901195b5f3..f79650429f5 100644 --- a/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/UmbreallaHeaderaTables.h +++ b/sdks/unreal/tests/TestClient/Source/TestClient/Public/Tests/UmbreallaHeaderaTables.h @@ -53,6 +53,12 @@ #include "ModuleBindings/Tables/PkU32TwoTable.g.h" #include "ModuleBindings/Tables/PkU64Table.g.h" #include "ModuleBindings/Tables/PkU8Table.g.h" +#include "ModuleBindings/Tables/ResultEveryPrimitiveStructStringTable.g.h" +#include "ModuleBindings/Tables/ResultI32StringTable.g.h" +#include "ModuleBindings/Tables/ResultIdentityStringTable.g.h" +#include "ModuleBindings/Tables/ResultSimpleEnumI32Table.g.h" +#include "ModuleBindings/Tables/ResultStringI32Table.g.h" +#include "ModuleBindings/Tables/ResultVecI32StringTable.g.h" #include "ModuleBindings/Tables/ScheduledTableTable.g.h" #include "ModuleBindings/Tables/TableHoldsTableTable.g.h" #include "ModuleBindings/Tables/UniqueBoolTable.g.h" diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Private/ModuleBindings/SpacetimeDBClient.g.cpp b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Private/ModuleBindings/SpacetimeDBClient.g.cpp index cabe6724ab0..10d056bf5da 100644 --- a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Private/ModuleBindings/SpacetimeDBClient.g.cpp +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Private/ModuleBindings/SpacetimeDBClient.g.cpp @@ -5,11 +5,20 @@ #include "DBCache/WithBsatn.h" #include "BSATN/UEBSATNHelpers.h" #include "ModuleBindings/Tables/MyTableTable.g.h" +#include "ModuleBindings/Tables/PkUuidTable.g.h" +#include "ModuleBindings/Tables/ProcInsertsIntoTable.g.h" +#include "ModuleBindings/Tables/ScheduledProcTableTable.g.h" static FReducer DecodeReducer(const FReducerEvent& Event) { const FString& ReducerName = Event.ReducerCall.ReducerName; + if (ReducerName == TEXT("schedule_proc")) + { + FScheduleProcArgs Args = UE::SpacetimeDB::Deserialize(Event.ReducerCall.Args); + return FReducer::ScheduleProc(Args); + } + return FReducer(); } @@ -28,6 +37,9 @@ UDbConnection::UDbConnection(const FObjectInitializer& ObjectInitializer) : Supe Procedures->Conn = this; RegisterTable(TEXT("my_table"), Db->MyTable); + RegisterTable(TEXT("pk_uuid"), Db->PkUuid); + RegisterTable(TEXT("proc_inserts_into"), Db->ProcInsertsInto); + RegisterTable(TEXT("scheduled_proc_table"), Db->ScheduledProcTable); } FContextBase::FContextBase(UDbConnection* InConn) @@ -64,13 +76,67 @@ void URemoteTables::Initialize() /** Creating tables */ MyTable = NewObject(this); + PkUuid = NewObject(this); + ProcInsertsInto = NewObject(this); + ScheduledProcTable = NewObject(this); /**/ /** Initialization */ MyTable->PostInitialize(); + PkUuid->PostInitialize(); + ProcInsertsInto->PostInitialize(); + ScheduledProcTable->PostInitialize(); /**/ } +void USetReducerFlags::ScheduleProc(ECallReducerFlags Flag) +{ + FlagMap.Add("ScheduleProc", Flag); +} + +void URemoteReducers::ScheduleProc() +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } + + Conn->CallReducerTyped(TEXT("schedule_proc"), FScheduleProcArgs(), SetCallReducerFlags); +} + +bool URemoteReducers::InvokeScheduleProc(const FReducerEventContext& Context, const UScheduleProcReducer* Args) +{ + if (!OnScheduleProc.IsBound()) + { + // Handle unhandled reducer error + if (InternalOnUnhandledReducerError.IsBound()) + { + // TODO: Check Context.Event.Status for Failed/OutOfEnergy cases + // For now, just broadcast any error + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for ScheduleProc")); + } + return false; + } + + OnScheduleProc.Broadcast(Context); + return true; +} + +bool URemoteReducers::InvokeScheduleProcWithArgs(const FReducerEventContext& Context, const FScheduleProcArgs& Args) +{ + if (!OnScheduleProc.IsBound()) + { + if (InternalOnUnhandledReducerError.IsBound()) + { + InternalOnUnhandledReducerError.Broadcast(Context, TEXT("No handler registered for ScheduleProc")); + } + return false; + } + + OnScheduleProc.Broadcast(Context); + return true; +} void URemoteProcedures::InsertWithTxCommit(FOnInsertWithTxCommitComplete Callback) { @@ -304,6 +370,64 @@ void URemoteProcedures::ReturnStruct(const uint32 A, const FString& B, FOnReturn Conn->CallProcedureTyped(TEXT("return_struct"), FReturnStructArgs(A, B), Wrapper); } +void URemoteProcedures::ScheduledProc(const FScheduledProcTableType& Data, FOnScheduledProcComplete Callback) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } + + FOnProcedureCompleteDelegate Wrapper; + Wrapper.BindLambda( + [Callback = MoveTemp(Callback), Conn = this->Conn] + (const FSpacetimeDBEvent& Event, + const TArray& ResultData, + bool bSuccess) mutable + { + FSpacetimeDBUnit ResultValue{}; + + if (bSuccess) { + ResultValue = UE::SpacetimeDB::Deserialize(ResultData); + } + + FTestProcClientProcedureEvent ProcedureEvent = FTestProcClientProcedureEvent(Event.GetAsProcedure()); + FProcedureEventContext Context = FProcedureEventContext(Conn, ProcedureEvent); + // Fire the user's typed delegate + Callback.ExecuteIfBound(Context, ResultValue, bSuccess); + }); + Conn->CallProcedureTyped(TEXT("scheduled_proc"), FScheduledProcArgs(Data), Wrapper); +} + +void URemoteProcedures::SortedUuidsInsert(FOnSortedUuidsInsertComplete Callback) +{ + if (!Conn) + { + UE_LOG(LogTemp, Error, TEXT("SpacetimeDB connection is null")); + return; + } + + FOnProcedureCompleteDelegate Wrapper; + Wrapper.BindLambda( + [Callback = MoveTemp(Callback), Conn = this->Conn] + (const FSpacetimeDBEvent& Event, + const TArray& ResultData, + bool bSuccess) mutable + { + FSpacetimeDBUnit ResultValue{}; + + if (bSuccess) { + ResultValue = UE::SpacetimeDB::Deserialize(ResultData); + } + + FTestProcClientProcedureEvent ProcedureEvent = FTestProcClientProcedureEvent(Event.GetAsProcedure()); + FProcedureEventContext Context = FProcedureEventContext(Conn, ProcedureEvent); + // Fire the user's typed delegate + Callback.ExecuteIfBound(Context, ResultValue, bSuccess); + }); + Conn->CallProcedureTyped(TEXT("sorted_uuids_insert"), FSortedUuidsInsertArgs(), Wrapper); +} + void URemoteProcedures::WillPanic(FOnWillPanicComplete Callback) { if (!Conn) @@ -387,6 +511,12 @@ void UDbConnection::ReducerEvent(const FReducerEvent& Event) // Use hardcoded string matching for reducer dispatching const FString& ReducerName = Event.ReducerCall.ReducerName; + if (ReducerName == TEXT("schedule_proc")) + { + FScheduleProcArgs Args = ReducerEvent.Reducer.GetAsScheduleProc(); + Reducers->InvokeScheduleProcWithArgs(Context, Args); + return; + } UE_LOG(LogTemp, Warning, TEXT("Unknown reducer: %s"), *ReducerName); } diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Private/ModuleBindings/Tables/PkUuidTable.g.cpp b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Private/ModuleBindings/Tables/PkUuidTable.g.cpp new file mode 100644 index 00000000000..f6143ec112e --- /dev/null +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Private/ModuleBindings/Tables/PkUuidTable.g.cpp @@ -0,0 +1,35 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#include "ModuleBindings/Tables/PkUuidTable.g.h" +#include "DBCache/UniqueIndex.h" +#include "DBCache/BTreeUniqueIndex.h" +#include "DBCache/ClientCache.h" +#include "DBCache/TableCache.h" + +void UPkUuidTable::PostInitialize() +{ + /** Client cache init and setting up indexes*/ + Data = MakeShared>(); + + TSharedPtr> PkUuidTable = Data->GetOrAdd(TableName); + + /***/ +} + +FTableAppliedDiff UPkUuidTable::Update(TArray> InsertsRef, TArray> DeletesRef) +{ + FTableAppliedDiff Diff = BaseUpdate(InsertsRef, DeletesRef, Data, TableName); + + return Diff; +} + +int32 UPkUuidTable::Count() const +{ + return GetRowCountFromTable(Data, TableName); +} + +TArray UPkUuidTable::Iter() const +{ + return GetAllRowsFromTable(Data, TableName); +} diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Private/ModuleBindings/Tables/ProcInsertsIntoTable.g.cpp b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Private/ModuleBindings/Tables/ProcInsertsIntoTable.g.cpp new file mode 100644 index 00000000000..51386e48bb6 --- /dev/null +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Private/ModuleBindings/Tables/ProcInsertsIntoTable.g.cpp @@ -0,0 +1,35 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#include "ModuleBindings/Tables/ProcInsertsIntoTable.g.h" +#include "DBCache/UniqueIndex.h" +#include "DBCache/BTreeUniqueIndex.h" +#include "DBCache/ClientCache.h" +#include "DBCache/TableCache.h" + +void UProcInsertsIntoTable::PostInitialize() +{ + /** Client cache init and setting up indexes*/ + Data = MakeShared>(); + + TSharedPtr> ProcInsertsIntoTable = Data->GetOrAdd(TableName); + + /***/ +} + +FTableAppliedDiff UProcInsertsIntoTable::Update(TArray> InsertsRef, TArray> DeletesRef) +{ + FTableAppliedDiff Diff = BaseUpdate(InsertsRef, DeletesRef, Data, TableName); + + return Diff; +} + +int32 UProcInsertsIntoTable::Count() const +{ + return GetRowCountFromTable(Data, TableName); +} + +TArray UProcInsertsIntoTable::Iter() const +{ + return GetAllRowsFromTable(Data, TableName); +} diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Private/ModuleBindings/Tables/ScheduledProcTableTable.g.cpp b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Private/ModuleBindings/Tables/ScheduledProcTableTable.g.cpp new file mode 100644 index 00000000000..e6f6502d7a7 --- /dev/null +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Private/ModuleBindings/Tables/ScheduledProcTableTable.g.cpp @@ -0,0 +1,47 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#include "ModuleBindings/Tables/ScheduledProcTableTable.g.h" +#include "DBCache/UniqueIndex.h" +#include "DBCache/BTreeUniqueIndex.h" +#include "DBCache/ClientCache.h" +#include "DBCache/TableCache.h" + +void UScheduledProcTableTable::PostInitialize() +{ + /** Client cache init and setting up indexes*/ + Data = MakeShared>(); + + TSharedPtr> ScheduledProcTableTable = Data->GetOrAdd(TableName); + ScheduledProcTableTable->AddUniqueConstraint("scheduled_id", [](const FScheduledProcTableType& Row) -> const uint64& { + return Row.ScheduledId; }); + + ScheduledId = NewObject(this); + ScheduledId->SetCache(ScheduledProcTableTable); + + /***/ +} + +FTableAppliedDiff UScheduledProcTableTable::Update(TArray> InsertsRef, TArray> DeletesRef) +{ + FTableAppliedDiff Diff = BaseUpdate(InsertsRef, DeletesRef, Data, TableName); + + Diff.DeriveUpdatesByPrimaryKey( + [](const FScheduledProcTableType& Row) + { + return Row.ScheduledId; + } + ); + + return Diff; +} + +int32 UScheduledProcTableTable::Count() const +{ + return GetRowCountFromTable(Data, TableName); +} + +TArray UScheduledProcTableTable::Iter() const +{ + return GetAllRowsFromTable(Data, TableName); +} diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ReturnEnumA.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ReturnEnumA.g.h index 5f943c62f48..b9871af2d7b 100644 --- a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ReturnEnumA.g.h +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ReturnEnumA.g.h @@ -14,7 +14,7 @@ struct TESTPROCCLIENT_API FReturnEnumAArgs GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 A; + uint32 A = 0; FReturnEnumAArgs() = default; diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ReturnPrimitive.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ReturnPrimitive.g.h index c9692a4ad98..a5e11aa42f1 100644 --- a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ReturnPrimitive.g.h +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ReturnPrimitive.g.h @@ -13,10 +13,10 @@ struct TESTPROCCLIENT_API FReturnPrimitiveArgs GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 Lhs; + uint32 Lhs = 0; // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 Rhs; + uint32 Rhs = 0; FReturnPrimitiveArgs() = default; diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ReturnStruct.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ReturnStruct.g.h index d83dba213af..a2a1c3c285b 100644 --- a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ReturnStruct.g.h +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ReturnStruct.g.h @@ -14,7 +14,7 @@ struct TESTPROCCLIENT_API FReturnStructArgs GENERATED_BODY() // NOTE: uint32 field not exposed to Blueprint due to non-blueprintable elements - uint32 A; + uint32 A = 0; UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") FString B; diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ScheduledProc.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ScheduledProc.g.h new file mode 100644 index 00000000000..672119da0ca --- /dev/null +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/ScheduledProc.g.h @@ -0,0 +1,40 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/Types/ScheduledProcTableType.g.h" +#include "Types/UnitType.h" +#include "ScheduledProc.g.generated.h" + +// Procedure arguments struct for ScheduledProc +USTRUCT(BlueprintType) +struct TESTPROCCLIENT_API FScheduledProcArgs +{ + GENERATED_BODY() + + UPROPERTY(BlueprintReadWrite, Category="SpacetimeDB") + FScheduledProcTableType Data; + + FScheduledProcArgs() = default; + + FScheduledProcArgs(const FScheduledProcTableType& InData) + : Data(InData) + {} + + + FORCEINLINE bool operator==(const FScheduledProcArgs& Other) const + { + return Data == Other.Data; + } + FORCEINLINE bool operator!=(const FScheduledProcArgs& Other) const + { + return !(*this == Other); + } +}; + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_STRUCT(FScheduledProcArgs, Data); +} diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/SortedUuidsInsert.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/SortedUuidsInsert.g.h new file mode 100644 index 00000000000..944474f37c1 --- /dev/null +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Procedures/SortedUuidsInsert.g.h @@ -0,0 +1,32 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/UnitType.h" +#include "SortedUuidsInsert.g.generated.h" + +// Procedure arguments struct for SortedUuidsInsert +USTRUCT(BlueprintType) +struct TESTPROCCLIENT_API FSortedUuidsInsertArgs +{ + GENERATED_BODY() + + FSortedUuidsInsertArgs() = default; + + + FORCEINLINE bool operator==(const FSortedUuidsInsertArgs& Other) const + { + return true; + } + FORCEINLINE bool operator!=(const FSortedUuidsInsertArgs& Other) const + { + return !(*this == Other); + } +}; + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_STRUCT_EMPTY(FSortedUuidsInsertArgs); +} diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Reducers/ScheduleProc.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Reducers/ScheduleProc.g.h new file mode 100644 index 00000000000..a7525420b46 --- /dev/null +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Reducers/ScheduleProc.g.h @@ -0,0 +1,43 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "ModuleBindings/ReducerBase.g.h" +#include "ScheduleProc.g.generated.h" + +// Reducer arguments struct for ScheduleProc +USTRUCT(BlueprintType) +struct TESTPROCCLIENT_API FScheduleProcArgs +{ + GENERATED_BODY() + + FScheduleProcArgs() = default; + + + FORCEINLINE bool operator==(const FScheduleProcArgs& Other) const + { + return true; + } + FORCEINLINE bool operator!=(const FScheduleProcArgs& Other) const + { + return !(*this == Other); + } +}; + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_STRUCT_EMPTY(FScheduleProcArgs); +} + +// Reducer class for internal dispatching +UCLASS(BlueprintType) +class TESTPROCCLIENT_API UScheduleProcReducer : public UReducerBase +{ + GENERATED_BODY() + +public: +}; + + diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/SpacetimeDBClient.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/SpacetimeDBClient.g.h index 5a6d1f4e62b..c37059835d5 100644 --- a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/SpacetimeDBClient.g.h +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/SpacetimeDBClient.g.h @@ -1,7 +1,7 @@ // THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE // WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. -// This was generated using spacetimedb cli version 1.8.0 (commit ce4a0dc173e8e177348af6854f20525a359c59a2). +// This was generated using spacetimedb cli version 1.11.2 (commit e090367c50e718fe19fbf827206a7516502288a9). #pragma once #include "CoreMinimal.h" @@ -20,10 +20,14 @@ #include "ModuleBindings/Procedures/ReturnEnumB.g.h" #include "ModuleBindings/Procedures/ReturnPrimitive.g.h" #include "ModuleBindings/Procedures/ReturnStruct.g.h" +#include "ModuleBindings/Procedures/ScheduledProc.g.h" +#include "ModuleBindings/Procedures/SortedUuidsInsert.g.h" #include "ModuleBindings/Procedures/WillPanic.g.h" #include "ModuleBindings/ReducerBase.g.h" +#include "ModuleBindings/Reducers/ScheduleProc.g.h" #include "ModuleBindings/Types/ReturnEnumType.g.h" #include "ModuleBindings/Types/ReturnStructType.g.h" +#include "ModuleBindings/Types/ScheduledProcTableType.g.h" #include "Types/Builtins.h" #include "Types/UnitType.h" #include "SpacetimeDBClient.g.generated.h" @@ -38,6 +42,9 @@ class USubscriptionHandle; /** Forward declaration for tables */ class UMyTableTable; +class UPkUuidTable; +class UProcInsertsIntoTable; +class UScheduledProcTableTable; /***/ // Delegates using the generated connection type. These wrap the base @@ -113,9 +120,7 @@ class TESTPROCCLIENT_API UContextBaseBpLib : public UBlueprintFunctionLibrary UENUM(BlueprintType, Category = "SpacetimeDB") enum class EReducerTag : uint8 { - - // (No reducers defined in module) - None + ScheduleProc }; USTRUCT(BlueprintType) @@ -127,7 +132,7 @@ struct TESTPROCCLIENT_API FReducer UPROPERTY(BlueprintReadOnly, Category = "SpacetimeDB") EReducerTag Tag = static_cast(0); - TVariant Data; + TVariant Data; // Optional metadata UPROPERTY(BlueprintReadOnly, Category = "SpacetimeDB") @@ -135,13 +140,29 @@ struct TESTPROCCLIENT_API FReducer uint32 ReducerId = 0; uint32 RequestId = 0; + static FReducer ScheduleProc(const FScheduleProcArgs& Value) + { + FReducer Out; + Out.Tag = EReducerTag::ScheduleProc; + Out.Data.Set(Value); + Out.ReducerName = TEXT("schedule_proc"); + return Out; + } + + FORCEINLINE bool IsScheduleProc() const { return Tag == EReducerTag::ScheduleProc; } + FORCEINLINE FScheduleProcArgs GetAsScheduleProc() const + { + ensureMsgf(IsScheduleProc(), TEXT("Reducer does not hold ScheduleProc!")); + return Data.Get(); + } + FORCEINLINE bool operator==(const FReducer& Other) const { if (Tag != Other.Tag || ReducerId != Other.ReducerId || RequestId != Other.RequestId || ReducerName != Other.ReducerName) return false; switch (Tag) { - case EReducerTag::None: - return true; + case EReducerTag::ScheduleProc: + return GetAsScheduleProc() == Other.GetAsScheduleProc(); default: return false; } } @@ -154,6 +175,19 @@ class TESTPROCCLIENT_API UReducerBpLib : public UBlueprintFunctionLibrary GENERATED_BODY() private: + + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Reducer") + static FReducer ScheduleProc(const FScheduleProcArgs& Value) { + return FReducer::ScheduleProc(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static bool IsScheduleProc(const FReducer& Reducer) { return Reducer.IsScheduleProc(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Reducer") + static FScheduleProcArgs GetAsScheduleProc(const FReducer& Reducer) { + return Reducer.GetAsScheduleProc(); + } }; /** Metadata describing a reducer run. */ @@ -210,6 +244,8 @@ enum class EProcedureTag : uint8 ReturnEnumB, ReturnPrimitive, ReturnStruct, + ScheduledProc, + SortedUuidsInsert, WillPanic }; @@ -222,7 +258,7 @@ struct TESTPROCCLIENT_API FProcedure UPROPERTY(BlueprintReadOnly, Category = "SpacetimeDB") EProcedureTag Tag = static_cast(0); - TVariant Data; + TVariant Data; // Optional metadata UPROPERTY(BlueprintReadOnly, Category = "SpacetimeDB") @@ -358,6 +394,38 @@ struct TESTPROCCLIENT_API FProcedure return Data.Get(); } + static FProcedure ScheduledProc(const FScheduledProcArgs& Value) + { + FProcedure Out; + Out.Tag = EProcedureTag::ScheduledProc; + Out.Data.Set(Value); + Out.ProcedureName = TEXT("scheduled_proc"); + return Out; + } + + FORCEINLINE bool IsScheduledProc() const { return Tag == EProcedureTag::ScheduledProc; } + FORCEINLINE FScheduledProcArgs GetAsScheduledProc() const + { + ensureMsgf(IsScheduledProc(), TEXT("Procedure does not hold ScheduledProc!")); + return Data.Get(); + } + + static FProcedure SortedUuidsInsert(const FSortedUuidsInsertArgs& Value) + { + FProcedure Out; + Out.Tag = EProcedureTag::SortedUuidsInsert; + Out.Data.Set(Value); + Out.ProcedureName = TEXT("sorted_uuids_insert"); + return Out; + } + + FORCEINLINE bool IsSortedUuidsInsert() const { return Tag == EProcedureTag::SortedUuidsInsert; } + FORCEINLINE FSortedUuidsInsertArgs GetAsSortedUuidsInsert() const + { + ensureMsgf(IsSortedUuidsInsert(), TEXT("Procedure does not hold SortedUuidsInsert!")); + return Data.Get(); + } + static FProcedure WillPanic(const FWillPanicArgs& Value) { FProcedure Out; @@ -395,6 +463,10 @@ struct TESTPROCCLIENT_API FProcedure return GetAsReturnPrimitive() == Other.GetAsReturnPrimitive(); case EProcedureTag::ReturnStruct: return GetAsReturnStruct() == Other.GetAsReturnStruct(); + case EProcedureTag::ScheduledProc: + return GetAsScheduledProc() == Other.GetAsScheduledProc(); + case EProcedureTag::SortedUuidsInsert: + return GetAsSortedUuidsInsert() == Other.GetAsSortedUuidsInsert(); case EProcedureTag::WillPanic: return GetAsWillPanic() == Other.GetAsWillPanic(); default: return false; @@ -514,6 +586,32 @@ class TESTPROCCLIENT_API UProcedureBpLib : public UBlueprintFunctionLibrary return Procedure.GetAsReturnStruct(); } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Procedure") + static FProcedure ScheduledProc(const FScheduledProcArgs& Value) { + return FProcedure::ScheduledProc(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Procedure") + static bool IsScheduledProc(const FProcedure& Procedure) { return Procedure.IsScheduledProc(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Procedure") + static FScheduledProcArgs GetAsScheduledProc(const FProcedure& Procedure) { + return Procedure.GetAsScheduledProc(); + } + + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Procedure") + static FProcedure SortedUuidsInsert(const FSortedUuidsInsertArgs& Value) { + return FProcedure::SortedUuidsInsert(Value); + } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Procedure") + static bool IsSortedUuidsInsert(const FProcedure& Procedure) { return Procedure.IsSortedUuidsInsert(); } + + UFUNCTION(BlueprintPure, Category = "SpacetimeDB|Procedure") + static FSortedUuidsInsertArgs GetAsSortedUuidsInsert(const FProcedure& Procedure) { + return Procedure.GetAsSortedUuidsInsert(); + } + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB|Procedure") static FProcedure WillPanic(const FWillPanicArgs& Value) { return FProcedure::WillPanic(Value); @@ -862,6 +960,8 @@ class TESTPROCCLIENT_API USetReducerFlags : public USetReducerFlagsBase GENERATED_BODY() public: + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + void ScheduleProc(ECallReducerFlags Flag); }; @@ -877,6 +977,15 @@ class TESTPROCCLIENT_API URemoteTables : public UObject UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") UMyTableTable* MyTable; + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UPkUuidTable* PkUuid; + + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UProcInsertsIntoTable* ProcInsertsInto; + + UPROPERTY(BlueprintReadOnly, Category="SpacetimeDB") + UScheduledProcTableTable* ScheduledProcTable; + }; // RemoteReducers class @@ -887,6 +996,19 @@ class TESTPROCCLIENT_API URemoteReducers : public UObject public: + DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam( + FScheduleProcHandler, + const FReducerEventContext&, Context + ); + UPROPERTY(BlueprintAssignable, Category="SpacetimeDB") + FScheduleProcHandler OnScheduleProc; + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void ScheduleProc(); + + bool InvokeScheduleProc(const FReducerEventContext& Context, const UScheduleProcReducer* Args); + bool InvokeScheduleProcWithArgs(const FReducerEventContext& Context, const FScheduleProcArgs& Args); + // Internal error handling DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FInternalOnUnhandledReducerError, const FReducerEventContext&, Context, const FString&, Error); FInternalOnUnhandledReducerError InternalOnUnhandledReducerError; @@ -943,6 +1065,16 @@ DECLARE_DYNAMIC_DELEGATE_ThreeParams(FOnReturnStructComplete, const FReturnStructType&, Result, bool, bSuccess); +DECLARE_DYNAMIC_DELEGATE_ThreeParams(FOnScheduledProcComplete, + const FProcedureEventContext&, Context, + FSpacetimeDBUnit, Result, + bool, bSuccess); + +DECLARE_DYNAMIC_DELEGATE_ThreeParams(FOnSortedUuidsInsertComplete, + const FProcedureEventContext&, Context, + FSpacetimeDBUnit, Result, + bool, bSuccess); + DECLARE_DYNAMIC_DELEGATE_ThreeParams(FOnWillPanicComplete, const FProcedureEventContext&, Context, FSpacetimeDBUnit, Result, @@ -988,6 +1120,14 @@ class TESTPROCCLIENT_API URemoteProcedures : public UObject void ReturnStruct(const uint32 A, const FString& B, FOnReturnStructComplete Callback); + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void ScheduledProc(const FScheduledProcTableType& Data, FOnScheduledProcComplete Callback); + + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") + void SortedUuidsInsert(FOnSortedUuidsInsertComplete Callback); + + UFUNCTION(BlueprintCallable, Category="SpacetimeDB") void WillPanic(FOnWillPanicComplete Callback); diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Tables/PkUuidTable.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Tables/PkUuidTable.g.h new file mode 100644 index 00000000000..7d3eb5b4b8e --- /dev/null +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Tables/PkUuidTable.g.h @@ -0,0 +1,64 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/Builtins.h" +#include "ModuleBindings/Types/PkUuidType.g.h" +#include "Tables/RemoteTable.h" +#include "DBCache/WithBsatn.h" +#include "DBCache/TableHandle.h" +#include "DBCache/TableCache.h" +#include "PkUuidTable.g.generated.h" + +UCLASS(BlueprintType) +class TESTPROCCLIENT_API UPkUuidTable : public URemoteTable +{ + GENERATED_BODY() + +public: + void PostInitialize(); + + /** Update function for pk_uuid table*/ + FTableAppliedDiff Update(TArray> InsertsRef, TArray> DeletesRef); + + /** Number of subscribed rows currently in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + int32 Count() const; + + /** Return all subscribed rows in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + TArray Iter() const; + + // Table Events + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnPkUuidInsert, + const FEventContext&, Context, + const FPkUuidType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( + FOnPkUuidUpdate, + const FEventContext&, Context, + const FPkUuidType&, OldRow, + const FPkUuidType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnPkUuidDelete, + const FEventContext&, Context, + const FPkUuidType&, DeletedRow); + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnPkUuidInsert OnInsert; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnPkUuidUpdate OnUpdate; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnPkUuidDelete OnDelete; + +private: + const FString TableName = TEXT("pk_uuid"); + + TSharedPtr> Data; +}; diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Tables/ProcInsertsIntoTable.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Tables/ProcInsertsIntoTable.g.h new file mode 100644 index 00000000000..cf70e4898ff --- /dev/null +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Tables/ProcInsertsIntoTable.g.h @@ -0,0 +1,64 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/Builtins.h" +#include "ModuleBindings/Types/ProcInsertsIntoType.g.h" +#include "Tables/RemoteTable.h" +#include "DBCache/WithBsatn.h" +#include "DBCache/TableHandle.h" +#include "DBCache/TableCache.h" +#include "ProcInsertsIntoTable.g.generated.h" + +UCLASS(BlueprintType) +class TESTPROCCLIENT_API UProcInsertsIntoTable : public URemoteTable +{ + GENERATED_BODY() + +public: + void PostInitialize(); + + /** Update function for proc_inserts_into table*/ + FTableAppliedDiff Update(TArray> InsertsRef, TArray> DeletesRef); + + /** Number of subscribed rows currently in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + int32 Count() const; + + /** Return all subscribed rows in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + TArray Iter() const; + + // Table Events + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnProcInsertsIntoInsert, + const FEventContext&, Context, + const FProcInsertsIntoType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( + FOnProcInsertsIntoUpdate, + const FEventContext&, Context, + const FProcInsertsIntoType&, OldRow, + const FProcInsertsIntoType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnProcInsertsIntoDelete, + const FEventContext&, Context, + const FProcInsertsIntoType&, DeletedRow); + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnProcInsertsIntoInsert OnInsert; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnProcInsertsIntoUpdate OnUpdate; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnProcInsertsIntoDelete OnDelete; + +private: + const FString TableName = TEXT("proc_inserts_into"); + + TSharedPtr> Data; +}; diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Tables/ScheduledProcTableTable.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Tables/ScheduledProcTableTable.g.h new file mode 100644 index 00000000000..b3838b0c979 --- /dev/null +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Tables/ScheduledProcTableTable.g.h @@ -0,0 +1,104 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/Builtins.h" +#include "ModuleBindings/Types/ScheduledProcTableType.g.h" +#include "Tables/RemoteTable.h" +#include "DBCache/WithBsatn.h" +#include "DBCache/TableHandle.h" +#include "DBCache/TableCache.h" +#include "ScheduledProcTableTable.g.generated.h" + +UCLASS(Blueprintable) +class TESTPROCCLIENT_API UScheduledProcTableScheduledIdUniqueIndex : public UObject +{ + GENERATED_BODY() + +private: + // Declare an instance of your templated helper. + // It's private because the UObject wrapper will expose its functionality. + FUniqueIndexHelper> ScheduledIdIndexHelper; + +public: + UScheduledProcTableScheduledIdUniqueIndex() + // Initialize the helper with the specific unique index name + : ScheduledIdIndexHelper("scheduled_id") { + } + + /** + * Finds a ScheduledProcTable by their unique scheduledid. + * @param Key The scheduledid to search for. + * @return The found FScheduledProcTableType, or a default-constructed FScheduledProcTableType if not found. + */ + // NOTE: Not exposed to Blueprint because uint64 types are not Blueprint-compatible + FScheduledProcTableType Find(uint64 Key) + { + // Simply delegate the call to the internal helper + return ScheduledIdIndexHelper.FindUniqueIndex(Key); + } + + // A public setter to provide the cache to the helper after construction + // This is a common pattern when the cache might be created or provided by another system. + void SetCache(TSharedPtr> InScheduledProcTableCache) + { + ScheduledIdIndexHelper.Cache = InScheduledProcTableCache; + } +}; +/***/ + +UCLASS(BlueprintType) +class TESTPROCCLIENT_API UScheduledProcTableTable : public URemoteTable +{ + GENERATED_BODY() + +public: + UPROPERTY(BlueprintReadOnly) + UScheduledProcTableScheduledIdUniqueIndex* ScheduledId; + + void PostInitialize(); + + /** Update function for scheduled_proc_table table*/ + FTableAppliedDiff Update(TArray> InsertsRef, TArray> DeletesRef); + + /** Number of subscribed rows currently in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + int32 Count() const; + + /** Return all subscribed rows in the cache */ + UFUNCTION(BlueprintCallable, Category = "SpacetimeDB") + TArray Iter() const; + + // Table Events + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnScheduledProcTableInsert, + const FEventContext&, Context, + const FScheduledProcTableType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams( + FOnScheduledProcTableUpdate, + const FEventContext&, Context, + const FScheduledProcTableType&, OldRow, + const FScheduledProcTableType&, NewRow); + + DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( + FOnScheduledProcTableDelete, + const FEventContext&, Context, + const FScheduledProcTableType&, DeletedRow); + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnScheduledProcTableInsert OnInsert; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnScheduledProcTableUpdate OnUpdate; + + UPROPERTY(BlueprintAssignable, Category = "SpacetimeDB Events") + FOnScheduledProcTableDelete OnDelete; + +private: + const FString TableName = TEXT("scheduled_proc_table"); + + TSharedPtr> Data; +}; diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Types/PkUuidType.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Types/PkUuidType.g.h new file mode 100644 index 00000000000..3a2817cdd25 --- /dev/null +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Types/PkUuidType.g.h @@ -0,0 +1,50 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/Builtins.h" +#include "PkUuidType.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTPROCCLIENT_API FPkUuidType +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + FSpacetimeDBUuid U; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + uint8 Data = 0; + + FORCEINLINE bool operator==(const FPkUuidType& Other) const + { + return U == Other.U && Data == Other.Data; + } + + FORCEINLINE bool operator!=(const FPkUuidType& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FPkUuidType. + * Combines the hashes of all fields that are compared in operator==. + * @param PkUuidType The FPkUuidType instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FPkUuidType& PkUuidType) +{ + uint32 Hash = GetTypeHash(PkUuidType.U); + Hash = HashCombine(Hash, GetTypeHash(PkUuidType.Data)); + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FPkUuidType); + + UE_SPACETIMEDB_STRUCT(FPkUuidType, U, Data); +} diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Types/ProcInsertsIntoType.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Types/ProcInsertsIntoType.g.h new file mode 100644 index 00000000000..c27126e55e6 --- /dev/null +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Types/ProcInsertsIntoType.g.h @@ -0,0 +1,58 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/Builtins.h" +#include "ProcInsertsIntoType.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTPROCCLIENT_API FProcInsertsIntoType +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + FSpacetimeDBTimestamp ReducerTs; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + FSpacetimeDBTimestamp ProcedureTs; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + uint8 X = 0; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + uint8 Y = 0; + + FORCEINLINE bool operator==(const FProcInsertsIntoType& Other) const + { + return ReducerTs == Other.ReducerTs && ProcedureTs == Other.ProcedureTs && X == Other.X && Y == Other.Y; + } + + FORCEINLINE bool operator!=(const FProcInsertsIntoType& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FProcInsertsIntoType. + * Combines the hashes of all fields that are compared in operator==. + * @param ProcInsertsIntoType The FProcInsertsIntoType instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FProcInsertsIntoType& ProcInsertsIntoType) +{ + uint32 Hash = GetTypeHash(ProcInsertsIntoType.ReducerTs); + Hash = HashCombine(Hash, GetTypeHash(ProcInsertsIntoType.ProcedureTs)); + Hash = HashCombine(Hash, GetTypeHash(ProcInsertsIntoType.X)); + Hash = HashCombine(Hash, GetTypeHash(ProcInsertsIntoType.Y)); + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FProcInsertsIntoType); + + UE_SPACETIMEDB_STRUCT(FProcInsertsIntoType, ReducerTs, ProcedureTs, X, Y); +} diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Types/ReturnEnumType.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Types/ReturnEnumType.g.h index a0235284c48..14b4b797c33 100644 --- a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Types/ReturnEnumType.g.h +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Types/ReturnEnumType.g.h @@ -22,7 +22,7 @@ struct TESTPROCCLIENT_API FReturnEnumType public: FReturnEnumType() = default; - TVariant MessageData; + TVariant MessageData; UPROPERTY(BlueprintReadOnly) EReturnEnumTag Tag = static_cast(0); diff --git a/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Types/ScheduledProcTableType.g.h b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Types/ScheduledProcTableType.g.h new file mode 100644 index 00000000000..dd1d9fdae9f --- /dev/null +++ b/sdks/unreal/tests/TestProcClient/Source/TestProcClient/Public/ModuleBindings/Types/ScheduledProcTableType.g.h @@ -0,0 +1,62 @@ +// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE +// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. + +#pragma once +#include "CoreMinimal.h" +#include "BSATN/UESpacetimeDB.h" +#include "Types/Builtins.h" +#include "ScheduledProcTableType.g.generated.h" + +USTRUCT(BlueprintType) +struct TESTPROCCLIENT_API FScheduledProcTableType +{ + GENERATED_BODY() + + // NOTE: uint64 field not exposed to Blueprint due to non-blueprintable elements + uint64 ScheduledId = 0; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + FSpacetimeDBScheduleAt ScheduledAt; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + FSpacetimeDBTimestamp ReducerTs; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + uint8 X = 0; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SpacetimeDB") + uint8 Y = 0; + + FORCEINLINE bool operator==(const FScheduledProcTableType& Other) const + { + return ScheduledId == Other.ScheduledId && ScheduledAt == Other.ScheduledAt && ReducerTs == Other.ReducerTs && X == Other.X && Y == Other.Y; + } + + FORCEINLINE bool operator!=(const FScheduledProcTableType& Other) const + { + return !(*this == Other); + } +}; + +/** + * Custom hash function for FScheduledProcTableType. + * Combines the hashes of all fields that are compared in operator==. + * @param ScheduledProcTableType The FScheduledProcTableType instance to hash. + * @return The combined hash value. + */ +FORCEINLINE uint32 GetTypeHash(const FScheduledProcTableType& ScheduledProcTableType) +{ + uint32 Hash = GetTypeHash(ScheduledProcTableType.ScheduledId); + Hash = HashCombine(Hash, GetTypeHash(ScheduledProcTableType.ScheduledAt)); + Hash = HashCombine(Hash, GetTypeHash(ScheduledProcTableType.ReducerTs)); + Hash = HashCombine(Hash, GetTypeHash(ScheduledProcTableType.X)); + Hash = HashCombine(Hash, GetTypeHash(ScheduledProcTableType.Y)); + return Hash; +} + +namespace UE::SpacetimeDB +{ + UE_SPACETIMEDB_ENABLE_TARRAY(FScheduledProcTableType); + + UE_SPACETIMEDB_STRUCT(FScheduledProcTableType, ScheduledId, ScheduledAt, ReducerTs, X, Y); +} diff --git a/sdks/unreal/tests/test.rs b/sdks/unreal/tests/test.rs index 601eed7cba9..2700f10ec14 100644 --- a/sdks/unreal/tests/test.rs +++ b/sdks/unreal/tests/test.rs @@ -303,3 +303,9 @@ fn unreal_indexed_simple_enum() { fn unreal_overlapping_subscriptions() { make_test("OverlappingSubscriptionsTest").run(); } + +#[test] +#[serial(Group6)] +fn unreal_insert_result_okay() { + make_test("InsertResultOkTest").run(); +}