> On 10 Jun 2022, at 11:20, ToddAndMargo via perl6-users <perl6-us...@perl.org> > wrote: > >>> On 10 Jun 2022, at 07:54, ToddAndMargo via perl6-users >>> <perl6-us...@perl.org> wrote: >>> >>> Hi All, >>> >>> I can easily get away with this in Modula2, but >>> how can I do this with Raku? >>> >>> I wish to create a single variable that can be >>> manipulated in two ways: >>> >>> 1) as a fixed length string (Str) >>> >>> 2) as a fixed length buffer (Buf) >>> >>> I can think of ways to do this, but it would >>> require separate variable and conversions routines >>> back and forth. >>> >>> Any words of Raku wisdom? >>> >>> Many thanks, >>> -T > > On 6/10/22 01:23, Elizabeth Mattijsen wrote: >> Perhaps https://raku.land/zef:raku-community-modules/Pythonic::Str is what >> you're after? > > No really. > > Maybe if I was to tell you what I am trying to do. > > I am trying to do a bitwise XOR on each byte > against another Buf. Then I want it to act > like a string again. > > I want the variable to act as both an array > of characters and a binary array of bytes.
Convert a string to a Buf: say "abc".encode.Buf; # Buf:0x<61 62 63> Convert a Buf to a Str: say Buf.new(97,98,99).decode; # abc Technically, I think the .encode is enough for what you want: say "abc".encode.does(Blob); # True