本文整理汇总了C#中ICodeWriter类的典型用法代码示例。如果您正苦于以下问题:C# ICodeWriter类的具体用法?C# ICodeWriter怎么用?C# ICodeWriter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ICodeWriter类属于命名空间,在下文中一共展示了ICodeWriter类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: WritePropertyImpl
/// <summary>
///
/// </summary>
/// <param name="o"></param>
/// <param name="typeName"></param>
/// <param name="variableNameInLowerCamelCase"></param>
/// <param name="defaultValue">Can be null</param>
/// <param name="doesWriteGetter"></param>
/// <param name="getterAccessibility">Can be null</param>
/// <param name="doesWriteSetter"></param>
/// <param name="setterAccessibility">Can be null</param>
private static void WritePropertyImpl(ICodeWriter o, string typeName, string variableNameInLowerCamelCase, string defaultValue, bool doesWriteGetter, string getterAccessibility, bool doesWriteSetter, string setterAccessibility)
{
string getterAccessibilityWithSpace = "";
string setterAccessibilityWithSpace = "";
string defaultValueWithAssignMark = "";
if (getterAccessibility != null)
{
getterAccessibilityWithSpace = getterAccessibility + " ";
}
if (setterAccessibility != null)
{
setterAccessibilityWithSpace = setterAccessibility + " ";
}
if (defaultValue != null)
{
defaultValueWithAssignMark = " = " + defaultValue;
}
string variableNameInUpperCamelCase = GetVariableNameInUpperCamelCase(variableNameInLowerCamelCase);
o.BeginBlock("public {0} {1} {{", typeName, variableNameInUpperCamelCase);
if (doesWriteGetter)
{
o.WriteLine("{0}get {{ return {1}; }}", getterAccessibilityWithSpace, variableNameInLowerCamelCase);
}
if (doesWriteSetter)
{
o.WriteLine("{0}set {{ {1} = value; }}", setterAccessibilityWithSpace, variableNameInLowerCamelCase);
}
o.EndBlock("}");
o.WriteLine("{0} {1}{2};", typeName, variableNameInLowerCamelCase, defaultValueWithAssignMark);
}
示例2: Write
#pragma warning disable 1591
public override void Write(ICodeWriter writer)
{
base.Write(writer);
if( _extensions.Count > 0 )
{
writer.Newline();
IndentMultiple(writer, 3);
writer.WriteWithIndentation(".extend({{");
writer.Newline();
writer.Indent();
foreach (var extension in _extensions)
{
if (extension != _extensions[0])
{
writer.Write(",");
writer.Newline();
}
writer.WriteWithIndentation("{0} : {1}", extension.Name, extension.Options);
}
writer.Unindent();
writer.Newline();
writer.WriteWithIndentation("}})");
UnindentMultiple(writer, 3);
}
}
示例3: WriteAccessor
public static void WriteAccessor(ICodeWriter o, string typeName, string variableNameInLowerCamelCase)
{
o.BeginBlock("public {0} {1} {{", typeName, GetVariableNameInUpperCamelCase(variableNameInLowerCamelCase));
o.WriteLine("get {{ return {0}; }}", variableNameInLowerCamelCase);
o.WriteLine("set {{ {0} = value; }}", variableNameInLowerCamelCase);
o.EndBlock("}");
}
示例4: Render
public void Render(ICodeWriter renderer)
{
if (!SingleLine)
{
renderer.WriteLine("");
renderer.WriteLine("{");
renderer.PushIndent();
foreach (ICode codeLine in codes)
{
renderer.WriteLine("{0}", codeLine);
}
renderer.PopIndent();
renderer.WriteLine("}");
}
else
{
renderer.Write("{ ");
foreach (ICode codeLine in codes)
{
renderer.Write("{0}", codeLine);
}
renderer.Write(" }");
}
}
示例5: Write
#pragma warning disable 1591
public override void Write(ICodeWriter writer)
{
var childIndex = 0;
var numberOfChildren = Children.Count;
writer.Write("{{");
if (numberOfChildren > 0)
{
writer.Newline();
writer.Indent();
foreach (var child in Children)
{
child.Write(writer);
childIndex++;
if (childIndex > 0 && childIndex < numberOfChildren)
writer.Write(",");
writer.Newline();
}
writer.Unindent();
writer.WriteWithIndentation("}}");
}
else
{
writer.Write("}}");
}
}
示例6: Write
public void Write(ICodeWriter o)
{
o.WriteLine("[Transient]");
o.BeginBlock("internal sealed class {0} : IEventFactory {{", factoryName);
WriteRecreateEvent(o);
o.EndBlock("}");
}
示例7: Write
#pragma warning disable 1591
public override void Write(ICodeWriter writer)
{
writer.WriteWithIndentation("Bifrost.namespace(\"{0}\", ", Name);
Content.Write(writer);
writer.WriteWithIndentation(");");
writer.Newline();
}
示例8: Render
public override void Render(ICodeWriter renderer)
{
renderer.Write("{0}<", name);
string placeholders = CodeUtils.Placeholders(GenericArgumentTypes.Count());
renderer.Write(string.Format("{0}>", placeholders), GenericArgumentTypes.ToArray());
}
示例9: Write
#pragma warning disable 1591
public override void Write(ICodeWriter writer)
{
writer.WriteWithIndentation("{0} = ", Name);
if( Value != null ) Value.Write(writer);
writer.Write(";");
writer.Newline();
}
示例10: WriteEvents
private void WriteEvents(ICodeWriter o)
{
foreach (EventInfo ei in eventInfos)
{
o.WriteLine("public event GenericEventHandler<{0}> {1};", ei.Type.Name, GetHandlerName(ei.Type.Name));
}
}
示例11: WriteSerializeFieldStatementRecursive
private static void WriteSerializeFieldStatementRecursive(ICodeWriter o, bool writeToBitstream, Type variableType, string variableName)
{
if (variableType.IsArray)
{
Type elemType = variableType.GetElementType();
if (writeToBitstream)
{
WriteStreamWriteStatement(o, variableName + ".Length");
o.BeginBlock("for (int i = 0; i < {0}.Length; i++) {{", variableName);
WriteSerializeFieldStatementRecursive(o, writeToBitstream, elemType, variableName + "[i]");
o.EndBlock("}");
}
else
{
string lengthVariableName = "_" + variableName + "Length";
o.WriteLine("int {0};", lengthVariableName);
WriteStreamReadStatement(o, "out", lengthVariableName);
o.WriteLine("{0} = new {1}[{2}];", variableName, elemType.ToString(), lengthVariableName);
o.BeginBlock("for (int i = 0; i < {0}; i++) {{", lengthVariableName);
WriteSerializeFieldStatementRecursive(o, writeToBitstream, elemType, variableName + "[i]");
o.EndBlock("}");
}
}
else
{
WriteSerializeNonCollectionStatement(o, writeToBitstream, variableType, variableName);
}
}
示例12: Render
public override void Render(ICodeWriter renderer)
{
foreach (AttributeStatement attribute in attributes)
{
renderer.Write("{0}", attribute);
}
base.Render(renderer);
}
示例13: WriteSingleton
public static void WriteSingleton(ICodeWriter o, string className)
{
o.WriteLine("private static {0} instance = new {0}();", className);
o.BeginBlock("public static {0} Instance {{", className);
o.WriteLine("get { return instance; }");
o.EndBlock("}");
o.WriteLine("private {0}() {{ }}", className);
}
示例14: Render
public override void Render(ICodeWriter renderer)
{
if(AccessModifier != null)
{
renderer.Write("{0} ", AccessModifier);
}
renderer.Write(snippet, name, statement);
}
示例15: Write
public void Write(ICodeWriter o)
{
o.WriteLine("[Transient]");
o.BeginBlock("internal sealed class {0} : IEventHandlers {{", handlersName);
WriteCallHandler(o);
WriteEvents(o);
o.EndBlock("}");
}