Return the estimated size of the type if it was all printed on one line.
ProtectedgetImplementation method for toString. needsParenthesis will be used to determine if
the returned string should be wrapped in parenthesis.
Return a string representation of this type.
Represents an optional type