Learn R Programming

lambda.r (version 1.2.4)

duck-typing: Functions for duck typing

Description

Duck typing is a way to emulate type checking by virtue of an object's characteristics as opposed to strong typing.

Usage

argument %isa% type
argument %hasa% property
argument %hasall% property

Arguments

argument

An object to inspect

type

A type name

property

A property of an object

Value

Boolean value indicating whether the specific test is true or not.

Details

These operators provide a convenient method for testing for specific properties of an object.

%isa% checks if an object is of the given type.

%hasa% checks if an object has a given property. This can be any named element of a list or data.frame.

See Also

%as%

Examples

Run this code
# NOT RUN {
5 %isa% numeric

Point(r,theta, 'polar') %as% {
  o <- list(r=r,theta=theta)
  o@system <- 'polar'
  o
}

p <- Point(5, pi/2, 'polar')
p 
# }
# NOT RUN {
<!-- %hasa% theta -->
# }
# NOT RUN {
# }

Run the code above in your browser using DataLab