Remove def_obj

Since obj constructors and types have different def_ids now,
their def can simply be a def_fn and a def_ty.
This commit is contained in:
Marijn Haverbeke 2011-06-23 18:07:58 +02:00
parent b4c0893a39
commit 3d7fdb509a
7 changed files with 7 additions and 28 deletions

View file

@ -28,7 +28,6 @@ type ty_param = ident;
tag def {
def_fn(def_id, purity);
def_obj(def_id);
def_obj_field(def_id);
def_mod(def_id);
def_native_mod(def_id);
@ -55,7 +54,6 @@ fn variant_def_ids(&def d) -> tup(def_id, def_id) {
fn def_id_of_def(def d) -> def_id {
alt (d) {
case (def_fn(?id,_)) { ret id; }
case (def_obj(?id)) { ret id; }
case (def_obj_field(?id)) { ret id; }
case (def_mod(?id)) { ret id; }
case (def_native_mod(?id)) { ret id; }

View file

@ -701,7 +701,6 @@ fn kind_has_type_params(u8 kind_ch) -> bool {
case ('p') { true }
case ('F') { true }
case ('y') { true }
case ('o') { true }
case ('t') { true }
case ('T') { false }
case ('m') { false }
@ -731,13 +730,9 @@ fn lookup_def(int cnum, vec[u8] data, &ast::def_id did_) -> ast::def {
case ('p') { ast::def_fn(did, ast::pure_fn) }
case ('F') { ast::def_native_fn(did) }
case ('y') { ast::def_ty(did) }
case ('o') { ast::def_obj(did) }
case ('T') { ast::def_native_ty(did) }
case (
// We treat references to tags as references to types.
't') {
ast::def_ty(did)
}
// We treat references to tags as references to types.
case ('t') { ast::def_ty(did) }
case ('m') { ast::def_mod(did) }
case ('n') { ast::def_native_mod(did) }
case ('v') {
@ -843,7 +838,6 @@ fn item_kind_to_str(u8 kind) -> str {
case ('p') { ret "pred"; }
case ('F') { ret "native fn"; }
case ('y') { ret "type"; }
case ('o') { ret "obj"; }
case ('T') { ret "native type"; }
case ('t') { ret "type"; }
case ('m') { ret "mod"; }