static string ToImportKindString(ImportKind kind) { switch (kind) { case ImportKind.None: return(""); case ImportKind.Class: return("class "); case ImportKind.Enum: return("enum "); case ImportKind.Func: return("func "); case ImportKind.Protocol: return("protocol "); case ImportKind.Struct: return("struct "); case ImportKind.TypeAlias: return("typealias "); case ImportKind.Var: return("var "); default: throw new ArgumentOutOfRangeException(nameof(kind)); } }
public SLImport(string module, ImportKind kind = ImportKind.None) : base(string.Format("import {0}{1}", ToImportKindString(kind), Exceptions.ThrowOnNull(module, nameof(module))), false, false, false) { Module = module; }
protected ImportDef(ImportKind kind) { Kind = kind; }