public static void unrealmaptypereference_is_initiated_as_expected_when_passed_a_map_type_reference_with_built_in_types_as_contained_types() { var mapTypeRaw = new FieldDefinitionRaw.MapTypeRaw() { keyType = new TypeReferenceRaw() { sourceReference = new SourceReferenceRaw { line = "1", column = "1" }, builtInType = "float", userType = null }, valueType = new TypeReferenceRaw() { sourceReference = new SourceReferenceRaw { line = "1", column = "1" }, builtInType = "float", userType = null } }; var containedKeyTypeReference = new UnrealBuiltInTypeReference(mapTypeRaw.keyType); var containedValueTypeReference = new UnrealBuiltInTypeReference(mapTypeRaw.valueType); var unrealMapTypeReference = new UnrealMapTypeReference(containedKeyTypeReference, containedValueTypeReference); Assert.That(unrealMapTypeReference.UnderlyingCapitalisedName == null); Assert.That(unrealMapTypeReference.RequiredIncludes.Count == 1); Assert.That(unrealMapTypeReference.RequiredIncludes.Contains("\"FloatToFloatMap.h\"")); Assert.That(unrealMapTypeReference.UnderlyingQualifiedName == "worker::Map<float, float>"); Assert.That(unrealMapTypeReference.UnrealType == "UFloatToFloatMap*"); Assert.That(unrealMapTypeReference.AssignUnderlyingValueToUnrealMemberVariable("TestField", "val") == "if (TestField == nullptr) { TestField = NewObject<UFloatToFloatMap>(this); } TestField->Init(val)"); Assert.That(unrealMapTypeReference.ConvertUnderlyingValueToUnrealLocalVariable("val") == "NewObject<UFloatToFloatMap>()->Init(val)"); Assert.That(unrealMapTypeReference.ConvertUnderlyingValueToUnrealMemberVariable("val") == "NewObject<UFloatToFloatMap>(this)->Init(val)"); Assert.That(unrealMapTypeReference.ConvertUnrealValueToSnapshotValue("val") == "val->GetUnderlying()"); Assert.That(unrealMapTypeReference.ConvertUnrealValueToUnderlyingValue("val") == "val->GetUnderlying()"); Assert.That(unrealMapTypeReference.DefaultInitialisationString == "worker::Map<float, float>()"); Assert.That(unrealMapTypeReference.SnapshotType == "worker::Map<float, float>"); }
private static FieldDefinitionRaw GenerateFieldDefinition(string name, string number, TypeReferenceRaw singularType = null, FieldDefinitionRaw.OptionTypeRaw optionType = null, FieldDefinitionRaw.ListTypeRaw listType = null, FieldDefinitionRaw.MapTypeRaw mapType = null) { var fieldDefinitionRaw = new FieldDefinitionRaw(); fieldDefinitionRaw.sourceReference = new SourceReferenceRaw() { line = "1", column = "1" }; fieldDefinitionRaw.name = name; fieldDefinitionRaw.number = number; fieldDefinitionRaw.singularType = singularType; fieldDefinitionRaw.optionType = optionType; fieldDefinitionRaw.listType = listType; fieldDefinitionRaw.mapType = mapType; return(fieldDefinitionRaw); }
public MapFieldType(FieldDefinitionRaw.MapTypeRaw mapTypeRaw, HashSet <string> enumSet) { keyType = new ContainedType(mapTypeRaw.keyType, enumSet); valueType = new ContainedType(mapTypeRaw.valueType, enumSet); }