User Tools


Function UPGRADED-ARRAY-ELEMENT-TYPE

Syntax

  • upgraded-array-element-type typespec &optional environmentupgraded-typespec

Arguments and Values

Description

Returns the element type of the most specialized array representation capable of holding items of the type denoted by typespec.

The typespec is a subtype of (and possibly type equivalent to) the upgraded-typespec.

If typespec is bit, the result is type equivalent to bit.

If typespec is base-char, the result is type equivalent to base-char.

If typespec is character, the result is type equivalent to character.

The purpose of upgraded-array-element-type is to reveal how an implementation does its upgrading.

The environment is used to expand any derived type specifiers that are mentioned in the typespec.

Examples

None.

Side Effects

None.

Affected By

None.

Exceptional Situations

None.

See Also

Notes

Except for storage allocation consequences and dealing correctly with the optional environment argument, upgraded-array-element-type could be defined as:

(defun upgraded-array-element-type (type &optional environment) (array-element-type (make-array 0 :element-type type)))

\issue{SUBTYPEP-ENVIRONMENT:ADD-ARG} \issue{ARRAY-TYPE-ELEMENT-TYPE-SEMANTICS:UNIFY-UPGRADING} \issue{CHARACTER-VS-CHAR:LESS-INCONSISTENT-SHORT}