public string GetInstantiation(Type type, bool interestingValue) { var dictTypes = GetDictionaryType(type); var keyTypeName = m_RootHandler.GetNameForCSharp(dictTypes.key); var valueTypeName = m_RootHandler.GetNameForCSharp(dictTypes.value); var keyTypeValue = m_RootHandler.GetInstantiation(dictTypes.key, true); var valueTypeValue = m_RootHandler.GetInstantiation(dictTypes.value, true); var invocationSuffix = interestingValue ? $"{{ {{ {keyTypeValue} , {valueTypeValue} }} }}" : "()"; m_RootHandler.GetNamespaceTracker().RecordNamespace("System.Collections.Generic"); return($"new Dictionary<{keyTypeName},{valueTypeName}>{invocationSuffix}"); }
public string GetNameForCSharp(Type type) { if (!m_NameForCSharpCache.ContainsKey(type)) { m_NameForCSharpCache[type] = m_InnerTypeHandler.GetNameForCSharp(type); } return(m_NameForCSharpCache[type]); }
public string GetInstantiation(Type type, bool interestingValue) { if (type.IsClass && !type.IsAbstract && type.GetConstructors().Any(ctor => ctor.GetParameters().Length == 0)) { return($"new {m_RootHandler.GetNameForCSharp(type)}()"); } // Assume a helper method exists return($"Create{m_RootHandler.GetNameForIdentifier(type)}()"); }
public string GetInstantiation(Type type, bool interestingValue) { if (type == typeof(byte[])) { if (interestingValue) { m_RootHandler.GetNamespaceTracker().RecordNamespace("System.Text"); return("Encoding.UTF8.GetBytes(\"{}\")"); } return("new byte[0]"); } if (type == typeof(Type[])) { return(interestingValue ? "new Type[] { typeof(string) }" : "Type.EmptyTypes"); } var eType = GetArrayElementType(type); return(!interestingValue ? $"new {m_RootHandler.GetNameForCSharp(eType)}[0]" : $"new {m_RootHandler.GetNameForCSharp(eType)}[] {{ {m_RootHandler.GetInstantiation(eType, true)} }}"); }
public string GetInstantiation(Type type, bool interestingValue) { m_RootHandler.GetNamespaceTracker().RecordNamespace("Rhino.Mocks"); m_RootHandler.GetNamespaceTracker().RecordNamespace("static Rhino.Mocks.MockRepository"); return($"GenerateStub<{m_RootHandler.GetNameForCSharp(type)}>()"); }
public string GetNameForCSharp(Type type) { return(m_InnerHandler.GetNameForCSharp(type)); }
public string GetInstantiation(Type type, bool interestingValue) { var elementType = type.GetGenericArguments().First(); return($"new List<{m_RootHandler.GetNameForCSharp(elementType)}>()"); }
public string GetInstantiation(Type type, bool interestingValue) { var innerType = GetNullableType(type); return($"({m_RootHandler.GetNameForCSharp(innerType)}?) {m_RootHandler.GetInstantiation(innerType, interestingValue)}"); }