private IPythonType CreateDictionary(string typeName, IReadOnlyList <IPythonType> typeArgs, bool isMutable)
 {
     if (typeArgs.Count == 2)
     {
         return(TypingTypeFactory.CreateDictionary(Interpreter, typeName, typeArgs[0], typeArgs[1], isMutable));
     }
     // TODO: report wrong number of arguments
     return(Interpreter.UnknownType);
 }
 private IPythonType CreateDictionary(string typeName, IReadOnlyList <IPythonType> typeArgs, bool isMutable)
 {
     if (typeArgs.Count == 2)
     {
         // If argument is generic type parameter then this is still a generic specification
         return(typeArgs.Any(a => a is IGenericTypeParameter)
             ? ToGenericTemplate(typeName, typeArgs, BuiltinTypeId.Dict)
             : TypingTypeFactory.CreateDictionary(Interpreter, typeName, typeArgs[0], typeArgs[1], isMutable));
     }
     // TODO: report wrong number of arguments
     return(Interpreter.UnknownType);
 }