internal void ConvertToCs(NfTypeNameParseItem tnpi, StringBuilder bldr) { bldr = bldr ?? new StringBuilder(); if (tnpi == null) { return; } var fname = tnpi.FullName; if (ValueTypeToLangAlias.ContainsKey(fname)) { fname = ValueTypeToLangAlias[fname]; } bldr.Append(fname); var hasGenCounter = tnpi.GenericCounter != null && tnpi.GenericCounter > 0; var hasGenericItems = tnpi.GenericItems != null && tnpi.GenericItems.Any(); if (!hasGenCounter && !hasGenericItems) { return; } if (hasGenCounter && !hasGenericItems) { bldr.Append($"<{new string(',', tnpi.GenericCounter.Value - 1)}>"); return; } var genericItemsCs = new List <string>(); foreach (var typeNameParseItem in tnpi.GenericItems) { var iBldr = new StringBuilder(); ConvertToCs(typeNameParseItem, iBldr); genericItemsCs.Add(iBldr.ToString()); } if (!genericItemsCs.Any()) { return; } bldr.Append("<"); bldr.Append(string.Join(",", genericItemsCs)); bldr.Append(">"); }
public string GenUseIsNotDefaultValueTest(string someTypeName, string variableName) { if (String.IsNullOrWhiteSpace(variableName)) { return(string.Empty); } if (String.IsNullOrWhiteSpace(someTypeName)) { return($"{variableName} != null"); } if (someTypeName == "System.String" || someTypeName == "string") { return($"!string.IsNullOrWhiteSpace({variableName})"); } if (IsPrimitiveTypeName(someTypeName)) { if (ValueTypeToLangAlias.ContainsKey(someTypeName)) { someTypeName = ValueTypeToLangAlias[someTypeName]; } switch (someTypeName) { case "byte": case "short": case "int": case "long": case "double": case "decimal": return($"{variableName} != 0"); case "char": return($"(byte){variableName} != 0"); case "bool": return($"!{variableName}"); } } return(String.Format("{0} != null", variableName)); }