{"size": 962, "ext": "scrbl", "max_stars_repo_path": "collections-doc/scribblings/data/collection/collections.scrbl", "max_stars_repo_name": "wilbowma/racket-collections", "max_stars_repo_stars_event_min_datetime": "2015-12-03T05:07:33.000Z", "max_stars_repo_stars_event_max_datetime": "2021-09-21T00:30:28.000Z", "max_issues_repo_path": "collections-doc/scribblings/data/collection/collections.scrbl", "max_issues_repo_name": "wilbowma/racket-collections", "max_issues_repo_issues_event_min_datetime": "2015-12-06T04:13:11.000Z", "max_issues_repo_issues_event_max_datetime": "2022-03-29T01:39:05.000Z", "max_forks_repo_path": "collections-doc/scribblings/data/collection/collections.scrbl", "max_forks_repo_name": "wilbowma/racket-collections", "max_forks_repo_forks_event_min_datetime": "2015-12-05T20:22:31.000Z", "max_forks_repo_forks_event_max_datetime": "2021-03-27T20:27:39.000Z"}
{"max_stars_count": 57, "max_issues_count": 31, "max_forks_count": 11, "avg_line_length": 41.8260869565, "max_line_length": 100, "alphanum_fraction": 0.8066528067}
#lang scribble/manual

@(require "private/utils.rkt")

@title{Generic Collections}

@defmodule[data/collection]

This provides a set of @reftech{generic interfaces} for built-in Racket collections to create a
unified interface for working with Racket data structures.
@seclink["structures" #:doc '(lib "scribblings/reference/reference.scrbl")]{User-defined structures}
may also implement the collections API to provide implementations for additional datatypes.

This collection provides a number of bindings that override bindings in @racketmodname[racket/base],
some with slightly different semantics in addition to support for multiple kinds of collections. For
this reason, this @emph{may} not be a drop-in replacement for existing code.

@local-table-of-contents[]

@include-section["collection/introduction.scrbl"]
@include-section["collection/examples.scrbl"]
@include-section["collection/reference.scrbl"]
@include-section["collection/experimental.scrbl"]