And indeed you can obtain this information for a substantial subset of monomorphic types. (It's in definitions.)
```
    /** Can we tell by inspecting the symbol that it will never
     *  at any phase have type parameters?
     */
    def neverHasTypeParameters(sym: Symbol) = sym match {
      case _: RefinementClassSymbol => true
      case _: ModuleClassSymbol     => true
      case _: ImplClassSymbol       => true
      case _                        =>
        (
             sym.isPrimitiveValueClass
          || sym.isAnonymousClass
          || sym.initialize.isMonomorphicType
        )
    }
```
But this is one of the things I was doing with my own classfile parser; attaching definitive how-many-type-params info to the symbol at creation time.