What do you want to accomplish with these? On Mon, Mar 14, 2011 at 6:23 PM, Eric Merritt <[email protected]> wrote: > I am working on a set of extensable types for Erlang using behaviours > and Paramaterized modules (feel free to ask why paramaterized > modules) for erlware_commons. In doing this I realized that the API is > going to be very important, since it will serve as the basis for many > other types. To that end I decided to put the API out for comment. I > will do this as a set of specs and docs. > > -opaque map(_KeyT, _ValueT) :: term(). > > %% @doc empties the map. > -spec clear() -> map(). > > %% @doc returns a boolean indicating if this map has the specified key > -spec has(term()) -> boolean(). > > %% @doc check to see if the specified value exists in the map > -spec has_value(Term()) -> boolean(). > > %% @doc return the key value pairs as a set of {key, value} pairs > -spec as_set() -> set(). > > %% @doc get the item from the may > -spec get(term()) -> term(). > > %% @doc return all keys in the map as a set > -spec keys(term()) -> set(). > > %% @doc Add a value to the map > -spec put(term(), term()) -> map(). > > %% @doc remove a value from the map > -spec remove(term()) -> map(). > > %% @doc get the current number of key value pairs in the map > -spec size() -> number(). > > %% @doc get all the values in the map as a sequence > -spec values() -> sequence(). > > As you can tell from the specs I am going to define sets and sequences > very quickly as well. > > -- > Eric Merritt > Erlang & OTP in Action (Manning) http://manning.com/logan > http://twitter.com/ericbmerritt > http://erlware.org > > -- > You received this message because you are subscribed to the Google Groups > "erlware-dev" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/erlware-dev?hl=en. > >
-- Martin Logan Erlang & OTP in Action (Manning) http://manning.com/logan http://twitter.com/martinjlogan http://erlware.org -- You received this message because you are subscribed to the Google Groups "erlware-dev" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/erlware-dev?hl=en.
