From d3ac395dcc6bb68b6ec1d1a8601d3b3c8b7bd372 Mon Sep 17 00:00:00 2001
From: Michael Rosenberg <42micro@gmail.com>
Date: Fri, 15 May 2015 22:07:20 -0400
Subject: [PATCH] Update reference.md

Added `Deref` to the "Special Traits" section
---
 src/doc/reference.md | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/src/doc/reference.md b/src/doc/reference.md
index 21e9be59ebbdf..0682c2003e3f6 100644
--- a/src/doc/reference.md
+++ b/src/doc/reference.md
@@ -3622,6 +3622,14 @@ The `Sized` trait indicates that the size of this type is known at compile-time.
 The `Drop` trait provides a destructor, to be run whenever a value of this type
 is to be destroyed.
 
+## The `Deref` trait
+
+The `Deref<Target = U>` trait allows a type to implicitly implement all the methods
+of the type `U`. When attempting to resolve a method call, the compiler will search
+the top-level type for the implementation of the called method. If no such method is
+found, `.deref()` is called and the compiler continues to search for the method
+implementation in the returned type `U`.
+
 # Memory model
 
 A Rust program's memory consists of a static set of *items* and a *heap*.