about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorKiet Tran <ktt3ja@gmail.com>2013-12-08 21:18:56 -0500
committerKiet Tran <ktt3ja@gmail.com>2013-12-08 21:21:15 -0500
commit1f80ec4fec5661529e2f2f987dab0c241ec18a48 (patch)
treed3ceabbb4609a1c31821c4828bbcfa54f3f97eca /src/libsyntax
parenta6310f6ad3434a03d5c257db5eae85b7b7522c29 (diff)
downloadrust-1f80ec4fec5661529e2f2f987dab0c241ec18a48.tar.gz
rust-1f80ec4fec5661529e2f2f987dab0c241ec18a48.zip
Fix comment on ast::DefStruct
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/ast.rs11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/libsyntax/ast.rs b/src/libsyntax/ast.rs
index 52613ba01a1..e64e1615041 100644
--- a/src/libsyntax/ast.rs
+++ b/src/libsyntax/ast.rs
@@ -254,9 +254,14 @@ pub enum Def {
               NodeId,  // expr node that creates the closure
               NodeId), // id for the block/body of the closure expr
 
-    /// Note that if it's a tuple struct's definition, the node id
-    /// of the DefId refers to the struct_def.ctor_id (whereas normally it
-    /// refers to the item definition's id).
+    /// Note that if it's a tuple struct's definition, the node id of the DefId
+    /// may either refer to the item definition's id or the struct_def.ctor_id.
+    ///
+    /// The cases that I have encountered so far are (this is not exhaustive):
+    /// - If it's a ty_path referring to some tuple struct, then DefMap maps
+    ///   it to a def whose id is the item definition's id.
+    /// - If it's an ExprPath referring to some tuple struct, then DefMap maps
+    ///   it to a def whose id is the struct_def.ctor_id.
     DefStruct(DefId),
     DefTyParamBinder(NodeId), /* struct, impl or trait with ty params */
     DefRegion(NodeId),