comparison string.rhope @ 111:13dfe8214254

Merge
author Mike Pavone <pavone@retrodev.com>
date Mon, 11 Oct 2010 20:04:48 -0400
parents a7add4db4a25 439db471f595
children fd23ab2c1a73
comparison
equal deleted inserted replaced
108:a7add4db4a25 111:13dfe8214254
594 594
595 _Flatten@String[string,dest,offset,count:out] 595 _Flatten@String[string,dest,offset,count:out]
596 { 596 {
597 If[count] 597 If[count]
598 { 598 {
599 out <- [string]_Flatten[[dest]Append[ [[string]Buffer >>]Index[offset] ], [offset]+[1i32], [count]-[1i32]] 599 out <- [_internal_array_copychunk[[string]Buffer >>, offset, dest, [dest]Length, count]]Length <<[[[dest]Length]+[count]]
600 }{ 600 }{
601 out <- dest 601 out <- dest
602 } 602 }
603 } 603 }
604 604
612 out <- [[string]Source >>]_Flatten[dest, [[string]Offset >>]+[offset], count] 612 out <- [[string]Source >>]_Flatten[dest, [[string]Offset >>]+[offset], count]
613 } 613 }
614 614
615 Flatten@String Slice[string:out] 615 Flatten@String Slice[string:out]
616 { 616 {
617 out <- [[Build[String()]]Buffer <<[ [[string]Source >>]_Flatten[Array[], [string]Offset >>, [string]ByteLen >>] ] 617 If[[string]ByteLen >>]
618 ]Length <<[[string]Length >>] 618 {
619 out <- [[Build[String()]]Buffer <<[ [[string]Source >>]_Flatten[_internal_array_allocnaked[[string]ByteLen >>, UInt8()], [string]Offset >>, [string]ByteLen >>] ]
620 ]Length <<[[string]Length >>]
621 }{
622 out <- ""
623 }
619 } 624 }
620 625
621 Print@String Slice[string:out] 626 Print@String Slice[string:out]
622 { 627 {
623 out <- Print[Flatten[string]] 628 out <- Print[Flatten[string]]
716 } 721 }
717 } 722 }
718 723
719 Flatten@String Cat[string:out] 724 Flatten@String Cat[string:out]
720 { 725 {
721 out <- [[Build[String()] 726 If[[string]ByteLen >>]
722 ]Buffer << [ 727 {
723 [[string]Right >>]_Flatten[ 728 out <- [[Build[String()]
724 [[string]Left >>]_Flatten[Array[], 0i32, [[string]Left >>]Byte Length], 729 ]Buffer << [
725 0i32, [[string]Right >>]Byte Length]] 730 [[string]Right >>]_Flatten[
726 ]Length << [[string]Length >>] 731 [[string]Left >>]_Flatten[_internal_array_allocnaked[[string]ByteLen >>, UInt8()], 0i32, [[string]Left >>]Byte Length],
732 0i32, [[string]Right >>]Byte Length]]
733 ]Length << [[string]Length >>]
734 }{
735 out <- ""
736 }
727 } 737 }
728 738
729 Print@String Cat[string:out] 739 Print@String Cat[string:out]
730 { 740 {
731 out <- Print[Flatten[string]] 741 out <- Print[Flatten[string]]