adapter Represents a type that accepts values of other types and returns value of target type. See discussion here.