CINXE.COM
dry-rb - dry-core v1.0 - Introduction
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8" /><meta content="phone" media="(max-width: 480px)" name="breakpoint" /><meta content="width=device-width, initial-scale=1.0" name="viewport" /><meta content="website" property="og:type" /><meta content="A toolset of small support modules used throughout the @dry-rb & @rom-rb ecosystems" name="description" /><meta content="dry-rb - dry-core v1.0 - Introduction" property="og:title" /><meta content="A toolset of small support modules used throughout the @dry-rb & @rom-rb ecosystems" property="og:description" /><meta content="/images/favicon-651cfa16.png" property="og:image" /><meta content="summary" name="twitter:card" /><meta content="dry-rb - dry-core v1.0 - Introduction" name="twitter:title" /><meta content="A toolset of small support modules used throughout the @dry-rb & @rom-rb ecosystems" name="twitter:description" /><meta content="/images/favicon-651cfa16.png" property="og:image" /><link href="/feed.xml" rel="alternate" title="dry-rb news" type="application/atom+xml" /><link href="https://fonts.googleapis.com/css?family=Source+Code+Pro|Source+Sans+Pro:400,400i,600,600i" rel="stylesheet" /><link href="/images/favicon-651cfa16.png" rel="icon" /><link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet" /><!--[if IE]><link href="/images/favicon.ico" rel="shortcut icon" /><![endif]--><title>dry-rb - dry-core v1.0 - Introduction</title><link href="/assets/stylesheets/site-9fe218b6.css" rel="stylesheet" /><script src="/assets/javascripts/site-948a8a19.js"></script></head><body><header><div class="content-wrap"><nav class="main-nav"><ul class="main-nav__list"><li class="main-nav__logo"><a href="/">dry-rb</a></li><li class="main-nav__with-dropdown main-nav__item--selected"><a href="/gems">Gems <span class="hide-mobile">/ Docs </span></a><div class="main-nav__dropdown main-nav__dropdown--gems"><ul><li></li><a href="/gems/dry-auto_inject/1.0">dry-auto_inject</a><li></li><a href="/gems/dry-cli/1.1">dry-cli</a><li></li><a href="/gems/dry-configurable/1.0">dry-configurable</a><li></li><a href="/gems/dry-container/0.11">dry-container</a><li></li><a href="/gems/dry-core/1.0">dry-core</a><li></li><a href="/gems/dry-effects/0.4">dry-effects</a><li></li><a href="/gems/dry-equalizer/0.2">dry-equalizer</a><li></li><a href="/gems/dry-events/1.0">dry-events</a><li></li><a href="/gems/dry-files/1.0">dry-files</a><li></li><a href="/gems/dry-inflector/1.0">dry-inflector</a><li></li><a href="/gems/dry-initializer/3.1">dry-initializer</a><li></li><a href="/gems/dry-logger/1.0">dry-logger</a><li></li><a href="/gems/dry-logic/1.5">dry-logic</a></ul><ul><li></li><a href="/gems/dry-matcher/1.0">dry-matcher</a><li></li><a href="/gems/dry-monads/1.6">dry-monads</a><li></li><a href="/gems/dry-monitor/1.0">dry-monitor</a><li></li><a href="/gems/dry-operation/1.0">dry-operation</a><li></li><a href="/gems/dry-rails/0.7">dry-rails</a><li></li><a href="/gems/dry-schema/1.13">dry-schema</a><li></li><a href="/gems/dry-struct/1.6">dry-struct</a><li></li><a href="/gems/dry-system/1.0">dry-system</a><li></li><a href="/gems/dry-transaction/0.15">dry-transaction</a><li></li><a href="/gems/dry-transformer/1.0">dry-transformer</a><li></li><a href="/gems/dry-types/1.7">dry-types</a><li></li><a href="/gems/dry-validation/1.10">dry-validation</a><li></li><a href="/gems/dry-view/0.8">dry-view</a></ul></div></li><li><a href="/status">Status</a></li><li><a href="/news">News</a></li><li><a href="/community">Community</a></li><br class="mobile-only" /><li class="main-nav__search"><form class="searchbox"><input class="form-control" id="search-input" type="text" /></form><script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js" type="text/javascript"></script><script>docsearch({ apiKey: '77902a61218a8fbaa06a6125cb6589a7', indexName: 'dry-rb', inputSelector: '#search-input', debug: false // Set debug to true if you want to inspect the dropdown });</script></li><li class="main-nav__code"><a href="https://github.com/dry-rb">Github</a></li></ul></nav></div></header><main><div class="intro-page"><div class="content-wrap"><div class="intro-page__inner"><h1 class="intro-page__header">dry-core <span class="hide">1.0</span></h1><p class="intro-page__link"><a href="https://github.com/dry-rb/dry-core">View dry-core on GitHub</a></p></div></div></div><div class="row"><div class="content-wrap"><aside class="sidebar"><h3 class="sidebar__version">Version: <select id="sidebar__version-switcher"><option selected="selected" value="/gems/dry-core/1.0">1.0</option><option value="/gems/dry-core/main">main</option><option value="/gems/dry-core/0.9">0.9</option><option value="/gems/dry-core/0.8">0.8</option><option value="/gems/dry-core/0.7">0.7</option><option value="/gems/dry-core/0.6">0.6</option><option value="/gems/dry-core/0.5">0.5</option><option value="/gems/dry-core/0.4">0.4</option></select></h3><ul><li><a href="/gems/dry-core/1.0" class="active">Introduction</a><li><a href="/gems/dry-core/1.0/cache" class="">Cache</a></li><li><a href="/gems/dry-core/1.0/constants" class="">Constants</a></li><li><a href="/gems/dry-core/1.0/classes" class="">Working with Classes</a><ul><li><a href="/gems/dry-core/1.0/classes/class-attributes" class="">Class Attributes</a></li><li><a href="/gems/dry-core/1.0/classes/class-builder" class="">Class Builder</a></li></ul></li><li><a href="/gems/dry-core/1.0/deprecations" class="">Deprecations</a></li><li><a href="/gems/dry-core/1.0/equalizer" class="">Equalizer</a></li><li><a href="/gems/dry-core/1.0/extensions" class="">Extensions</a></li></li></ul></aside><article class="gem-article"><h2>Introduction</h2><p><code>dry-core</code> is a simple toolset that can be used in many places.</p> <h2 id="features" class="hd"><a name="features" class="anchor" href="#features"> <svg aria-hidden="true" height="16" width="16" version="1.1" viewBox="0 0 16 16"> <path d="M4 9h1v1h-1c-1.5 0-3-1.69-3-3.5s1.55-3.5 3-3.5h4c1.45 0 3 1.69 3 3.5 0 1.41-0.91 2.72-2 3.25v-1.16c0.58-0.45 1-1.27 1-2.09 0-1.28-1.02-2.5-2-2.5H4c-0.98 0-2 1.22-2 2.5s1 2.5 2 2.5z m9-3h-1v1h1c1 0 2 1.22 2 2.5s-1.02 2.5-2 2.5H9c-0.98 0-2-1.22-2-2.5 0-0.83 0.42-1.64 1-2.09v-1.16c-1.09 0.53-2 1.84-2 3.25 0 1.81 1.55 3.5 3 3.5h4c1.45 0 3-1.69 3-3.5s-1.5-3.5-3-3.5z"></path> </svg> </a>Features</h2> <ul> <li><a href="/gems/dry-core/1.0/cache">Cache</a> - allows you to cache call results that are solely determined by arguments.</li> <li><a href="/gems/dry-core/1.0/classes/class-attributes">Class Attributes</a></li> <li><a href="/gems/dry-core/1.0/classes/class-builder">Class Builder</a></li> <li><a href="/gems/dry-core/1.0/constants">Constants</a> - a list of constants you can use to avoid memory allocations or identity checks.</li> <li><a href="/gems/dry-core/1.0/deprecations">Deprecations</a></li> <li><a href="/gems/dry-core/1.0/equalizer">Equalizer</a> - simple mixin providing equality, equivalence and inspection methods.</li> <li><a href="/gems/dry-core/1.0/extensions">Extensions</a></li> </ul> <p><a class="edit_page_link" href="https://github.com/dry-rb/dry-core/edit/release-1.0/docsite/source/index.html.md"><span class="ss-icon ss-social octocat">octocat</span><span>Edit on GitHub</span></a></p></article></div></div></main><footer><div class="content-wrap"><nav class="footer__links"><ul><li><a href="/gems"><span>Gems</span></a></li><li><a href="/community"><span>Community</span></a></li><li><a href="https://github.com/dry-rb"><span>Code</span></a></li><li><a href="https://discourse.dry-rb.org"><span>Discussion</span></a></li><li><a href="https://dry-rb.zulipchat.com"><span>Chat</span></a></li><li><a href="https://twitter.com/dry_rb"><span>Twitter</span></a></li></ul></nav><div class="footer__credits"><p>Website made with love by <a href="https://www.icelab.com.au/">Icelab</a>.</p></div><div class="footer__credits"><p>Found a typo? Want to add something? <br />Send us an issue or a pull-request at <a href="https://github.com/dry-rb/dry-rb.org/">GitHub</a>.</p></div></div></footer></body></html>