// ReSharper disable VirtualMemberNeverOverriden.Global protected virtual string GenerateSourceString(ISource source) { if (source is ISourceAlias && (((ISourceAlias)source).Source) is ISubSelect) { return(GenerateSubSelectSourceString((ISubSelect)((ISourceAlias)source).Source, (IAlias)source)); } return(source is ISubSelect ? GenerateSubSelectSourceString((ISubSelect)source) : NameConverter.GenerateSourceNameString(source)); }