private SpanCodeGenerator CreateModelCodeGenerator(string model)
#endif
        {
            return(new SetModelTypeCodeGenerator(model, (templateType, modelTypeName) => {
                return CompilerServicesUtility.CSharpCreateGenericType(templateType, modelTypeName, true);
            }));
        }
        public override string BuildTypeName(Type templateType, Type modelType)
        {
            if (templateType == null)
            {
                throw new ArgumentNullException("templateType");
            }

            var modelTypeName = CompilerServicesUtility.ResolveCSharpTypeName(modelType);

            return(CompilerServicesUtility.CSharpCreateGenericType(templateType, modelTypeName, false));
        }