예제 #1
0
        internal static SqlRewriter GetRewriter(SqlDialect dialect)
        {
            if (HasRewriters)
            {
                var type = dialect.GetType();
                if (Rewriters.ContainsKey(type))
                {
                    return(Rewriters[type]);
                }
            }

            return(null);
        }
예제 #2
0
        private static void WriteMethodReport(StreamWriter writer, string methodName, TypePolicy?typePolicy, ApiAccess effectiveTypeAccess)
        {
            var methodPolicy = (MemberPolicy?)null;

            if (typePolicy != null)
            {
                typePolicy.Members.TryGetValue(methodName, out methodPolicy);
            }

            var effectiveMethodAccess = GetEffectiveMethodAccess(methodPolicy?.Access, typePolicy?.Access, effectiveTypeAccess);

            writer.Write("     ");
            writer.Write(methodName);
            writer.Write(": ");
            writer.Write(effectiveMethodAccess);
            if (methodPolicy?.HasRewriters ?? false)
            {
                writer.Write(" (");
                writer.Write(string.Join(", ", methodPolicy !.Rewriters.Cast <IMemberRewriterInternal>().Select(r => r.GetShortName())));
                writer.Write(")");
            }
            writer.WriteLine();
        }