@@ -63,8 +63,8 @@ import trans::type_of_fn_full;
63
63
import trans:: drop_ty;
64
64
65
65
obj namegen( mutable i: int) {
66
- fn next ( prefix : str ) -> str {
67
- i += 1 ; ret prefix + istr :: to_estr ( int:: str ( i) ) ;
66
+ fn next ( prefix : & istr ) -> istr {
67
+ i += 1 ; ret prefix + int:: str ( i) ;
68
68
}
69
69
}
70
70
@@ -438,13 +438,15 @@ fn rslt(bcx: @block_ctxt, val: ValueRef) -> result {
438
438
ret { bcx : bcx, val : val} ;
439
439
}
440
440
441
- fn ty_str ( tn : type_names , t : TypeRef ) -> str {
442
- ret istr :: to_estr ( lib:: llvm:: type_to_str ( tn, t) ) ;
441
+ fn ty_str ( tn : type_names , t : TypeRef ) -> istr {
442
+ ret lib:: llvm:: type_to_str ( tn, t) ;
443
443
}
444
444
445
445
fn val_ty ( v : ValueRef ) -> TypeRef { ret llvm:: LLVMTypeOf ( v) ; }
446
446
447
- fn val_str ( tn : type_names , v : ValueRef ) -> str { ret ty_str ( tn, val_ty ( v) ) ; }
447
+ fn val_str ( tn : type_names , v : ValueRef ) -> istr {
448
+ ret ty_str ( tn, val_ty ( v) ) ;
449
+ }
448
450
449
451
// Returns the nth element of the given LLVM structure type.
450
452
fn struct_elt ( llstructty : TypeRef , n : uint ) -> TypeRef {
@@ -551,9 +553,9 @@ fn T_struct(elts: &[TypeRef]) -> TypeRef {
551
553
False ) ;
552
554
}
553
555
554
- fn T_named_struct ( name : & str ) -> TypeRef {
556
+ fn T_named_struct ( name : & istr ) -> TypeRef {
555
557
let c = llvm:: LLVMGetGlobalContext ( ) ;
556
- ret istr:: as_buf ( istr :: from_estr ( name) , { |buf|
558
+ ret istr:: as_buf ( name, { |buf|
557
559
llvm:: LLVMStructCreateNamed ( c, buf)
558
560
} ) ;
559
561
}
@@ -570,14 +572,14 @@ fn T_empty_struct() -> TypeRef { ret T_struct([]); }
570
572
// existing objects, use ccx.rust_object_type. Calling
571
573
// T_rust_object() again will return a different one.
572
574
fn T_rust_object ( ) -> TypeRef {
573
- let t = T_named_struct ( "rust_object" ) ;
575
+ let t = T_named_struct ( ~ "rust_object") ;
574
576
let e = T_ptr ( T_empty_struct ( ) ) ;
575
577
set_struct_body ( t, [ e, e] ) ;
576
578
ret t;
577
579
}
578
580
579
581
fn T_task ( ) -> TypeRef {
580
- let t = T_named_struct ( "task" ) ;
582
+ let t = T_named_struct ( ~ "task") ;
581
583
582
584
// Refcount
583
585
// Delegate pointer
@@ -633,7 +635,7 @@ fn T_copy_glue_fn(cx: &crate_ctxt) -> TypeRef {
633
635
}
634
636
635
637
fn T_tydesc ( taskptr_type : TypeRef ) -> TypeRef {
636
- let tydesc = T_named_struct ( "tydesc" ) ;
638
+ let tydesc = T_named_struct ( ~ "tydesc") ;
637
639
let tydescpp = T_ptr ( T_ptr ( tydesc) ) ;
638
640
let pvoid = T_ptr ( T_i8 ( ) ) ;
639
641
let glue_fn_ty =
@@ -817,14 +819,14 @@ fn C_integral(t: TypeRef, u: uint, sign_extend: Bool) -> ValueRef {
817
819
ret llvm:: LLVMRustConstSmallInt ( t, u, sign_extend) ;
818
820
}
819
821
820
- fn C_float ( s : & str ) -> ValueRef {
821
- ret istr:: as_buf ( istr :: from_estr ( s ) , { |buf|
822
+ fn C_float ( s : & istr ) -> ValueRef {
823
+ ret istr:: as_buf ( s , { |buf|
822
824
llvm:: LLVMConstRealOfString ( T_float ( ) , buf)
823
825
} ) ;
824
826
}
825
827
826
- fn C_floating ( s : & str , t : TypeRef ) -> ValueRef {
827
- ret istr:: as_buf ( istr :: from_estr ( s ) , { |buf|
828
+ fn C_floating ( s : & istr , t : TypeRef ) -> ValueRef {
829
+ ret istr:: as_buf ( s , { |buf|
828
830
llvm:: LLVMConstRealOfString ( t, buf)
829
831
} ) ;
830
832
}
@@ -850,11 +852,11 @@ fn C_u8(i: uint) -> ValueRef { ret C_integral(T_i8(), i, False); }
850
852
851
853
// This is a 'c-like' raw string, which differs from
852
854
// our boxed-and-length-annotated strings.
853
- fn C_cstr ( cx : & @crate_ctxt , s : & str ) -> ValueRef {
854
- let sc = istr:: as_buf ( istr :: from_estr ( s ) , { |buf|
855
- llvm:: LLVMConstString ( buf, str :: byte_len ( s) , False )
855
+ fn C_cstr ( cx : & @crate_ctxt , s : & istr ) -> ValueRef {
856
+ let sc = istr:: as_buf ( s , { |buf|
857
+ llvm:: LLVMConstString ( buf, istr :: byte_len ( s) , False )
856
858
} ) ;
857
- let g = istr:: as_buf ( istr :: from_estr ( cx. names . next ( "str" ) ) , { |buf|
859
+ let g = istr:: as_buf ( cx. names . next ( ~ "str") , { |buf|
858
860
llvm:: LLVMAddGlobal ( cx. llmod , val_ty ( sc) , buf)
859
861
} ) ;
860
862
llvm:: LLVMSetInitializer ( g, sc) ;
@@ -865,19 +867,19 @@ fn C_cstr(cx: &@crate_ctxt, s: &str) -> ValueRef {
865
867
866
868
867
869
// A rust boxed-and-length-annotated string.
868
- fn C_str ( cx : & @crate_ctxt , s : & str ) -> ValueRef {
870
+ fn C_str ( cx : & @crate_ctxt , s : & istr ) -> ValueRef {
869
871
let len =
870
- str :: byte_len ( s) ; // 'alloc'
872
+ istr :: byte_len ( s) ; // 'alloc'
871
873
// 'fill'
872
874
// 'pad'
873
875
874
- let cstr = istr:: as_buf ( istr :: from_estr ( s ) , { |buf|
876
+ let cstr = istr:: as_buf ( s , { |buf|
875
877
llvm:: LLVMConstString ( buf, len, False )
876
878
} ) ;
877
879
let box =
878
880
C_struct ( [ C_int ( abi:: const_refcount as int ) , C_int ( len + 1 u as int ) ,
879
881
C_int ( len + 1 u as int ) , C_int ( 0 ) , cstr] ) ;
880
- let g = istr:: as_buf ( istr :: from_estr ( cx. names . next ( "str" ) ) , { |buf|
882
+ let g = istr:: as_buf ( cx. names . next ( ~ "str") , { |buf|
881
883
llvm:: LLVMAddGlobal ( cx. llmod , val_ty ( box) , buf)
882
884
} ) ;
883
885
llvm:: LLVMSetInitializer ( g, box) ;
@@ -887,9 +889,9 @@ fn C_str(cx: &@crate_ctxt, s: &str) -> ValueRef {
887
889
}
888
890
889
891
// Returns a Plain Old LLVM String:
890
- fn C_postr ( s : & str ) -> ValueRef {
891
- ret istr:: as_buf ( istr :: from_estr ( s ) , { |buf|
892
- llvm:: LLVMConstString ( buf, str :: byte_len ( s) , False )
892
+ fn C_postr ( s : & istr ) -> ValueRef {
893
+ ret istr:: as_buf ( s , { |buf|
894
+ llvm:: LLVMConstString ( buf, istr :: byte_len ( s) , False )
893
895
} ) ;
894
896
}
895
897
@@ -922,8 +924,7 @@ fn C_bytes(bytes: &[u8]) -> ValueRef {
922
924
923
925
fn C_shape ( ccx : & @crate_ctxt , bytes : & [ u8 ] ) -> ValueRef {
924
926
let llshape = C_bytes ( bytes) ;
925
- let llglobal = istr:: as_buf (
926
- istr:: from_estr ( ccx. names . next ( "shape" ) ) , { |buf|
927
+ let llglobal = istr:: as_buf ( ccx. names . next ( ~"shape") , { |buf|
927
928
llvm:: LLVMAddGlobal ( ccx. llmod , val_ty ( llshape) , buf)
928
929
} ) ;
929
930
llvm:: LLVMSetInitializer ( llglobal, llshape) ;
0 commit comments