private void TryAppendAotuInterface(StringAppender appender, YuScriptCreateSetting setting) { if (!setting.IsAotuCreateInterface) { return; } var interfaceId = "I" + setting.ScriptId; appender.AppendLine($"public interface {interfaceId}" + "{}"); appender.AppendLine(); }
private void AppendBody(StringAppender appender, YuScriptCreateSetting setting) { var nameSpace = setting.NameSpace; appender.AppendLine("namespace " + nameSpace); appender.AppendLine("{"); appender.ToRight(); var scriptId = setting.ScriptId; var inheritText = setting.IsAotuCreateInterface ? ": I" + scriptId : null; switch (setting.inherits) { case Inherits.Class: TryAppendAotuInterface(appender, setting); appender.AppendLine($"public class {scriptId} {inheritText}"); break; case Inherits.AbstractClass: TryAppendAotuInterface(appender, setting); appender.AppendLine($"public abstract class {scriptId} {inheritText}"); break; case Inherits.Enum: appender.AppendLine($"public enum {scriptId} : byte"); break; case Inherits.Interface: appender.AppendLine($"public interface {scriptId}"); break; default: throw new ArgumentOutOfRangeException(); } if (!string.IsNullOrEmpty(setting.Inherit) && setting.inherits != Inherits.Enum) { appender.Append(" : " + setting.Inherit); } appender.AppendLine("{"); appender.AppendLine("}"); appender.ToLeft(); appender.AppendLine("}"); appender.AppendLine(); if (!string.IsNullOrEmpty(setting.PreComplie)) { appender.AppendLine("#endif"); } }
private void AppendNoteHead(StringAppender appender, YuScriptCreateSetting setting) { if (!string.IsNullOrEmpty(setting.PreComplie)) { appender.AppendLine("#if " + setting.PreComplie); appender.AppendLine(); } appender.AppendLine("#region Head"); appender.AppendLine(); appender.AppendLine($"// Author: {DevelopId}"); appender.AppendLine($"// Email: {DevelopEmail}"); appender.AppendLine(); appender.AppendLine("#endregion"); appender.AppendLine(); }