From c4697d86052819d7973b641b044d04b7b57c8186 Mon Sep 17 00:00:00 2001 From: "Carol (Nichols || Goulding)" Date: Tue, 22 Jul 2025 10:38:18 -0400 Subject: [PATCH 1/8] Chapter 20 from tech review --- nostarch/docx/chapter20.docx | Bin 105976 -> 73080 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/nostarch/docx/chapter20.docx b/nostarch/docx/chapter20.docx index efb4a2b71f128ae5884db96d8d0f3e2def1010ae..7a96c5e42f83c4b41cf6ffd5cf62fb74dc5261f0 100644 GIT binary patch literal 73080 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

)DG9ppOT!m~PQN>7VspROGYmH3@#^YX0lD0NZ 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 literal 105976 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�y9h~}5|+fUT$tof2ce%^$Y3zESJs#ngW8x@ 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≦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 RWrTp}0TYkG)USRw{{j5T=Gy=O From 529d790936d5f49d16f7a4c29e8bc4d7d406f707 Mon Sep 17 00:00:00 2001 From: "Carol (Nichols || Goulding)" Date: Tue, 22 Jul 2025 14:00:11 -0400 Subject: [PATCH 2/8] Address tech review comments --- nostarch/docx/chapter20.docx | Bin 73080 -> 96454 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/nostarch/docx/chapter20.docx b/nostarch/docx/chapter20.docx index 7a96c5e42f83c4b41cf6ffd5cf62fb74dc5261f0..954b55b152c543c6c74040d6552f64958cd1ea6e 100644 GIT binary patch literal 96454 zcmeFXQuh4{tgqr>Z{nm&?`~sFSO5x4 znFj#=Z~y-r{}*SVDRokAkP%VzRpLwdh)!y&K>(8VIxuVqoLZ5uubHA+^eg_l=O=eu z8M0Y6f0|tBkJBwL{;-2sQuRb3D+fc2+&CjvJR}Rd(1oZJpBckFZ-lpjR^67l#5g=p zMs#hhSYr+tLB7^!GOchOLb7KM=&-jDt$Eeo5i0b%6}mE$uP8eI9e8lJWE?z!Fb-7w zzdW9S(bW%#ymt2vq6dVpq@GpSQB}!|R!-xZeO$U$_cUZRD99?QyuMV`z5U=qujHsH zgFwwUc;bge{^k=p?#9raXCoYfA^S8T6Gv^+_;N`miNci(TUE@sU85P5JQg&OlG}F# zM{_i+5MdLOK}{<;hYreOQ+6;CK!E3Jo7E8xrt~oHz5R%H?aurt^zN( zcyJ1uIME|=l+CI}*$2Ljr>70o%ZzoZ!7z^Q|Bhaj*l#(=2rF&TSt!R~JhzFt4gskxDTA`PX1V(F&9k-!tb1-KKDn@%H0SA*E#|V9tb2!@stOm` z4Yl&FH>myDJ(i?Cf#2-j9{7zn^~J4~9*!7@aXVq{y^LLxo}22h-DBk}ZX+ zwTHtS+Z+ydhjayu@amFwNVa-ml_{eU;_pqi<^6cpyA}+6r`P7Q=nc8^dh>GVNbnjGapYIv(igMpO?bz2a%o8LTM(@+ z_e+gf(5T|h@Ys+&+ZX>>&{%}gz{zQ!`)9L-f#Tb41AN<|3uBV{_zOE%aVS3OHhTg? zTICL=d3UAp4Q1D5(j2<>2BEkE?M!H_n@kSTK5E(b7oM9$H6H%{O%?5 zr~v9nsC?(Z7yZB|186Gf=hz@UBbTBx+ikHFV`}GIurzJ4X&`Dy$pN2PRJ3(ltXe|L z3qE_lcb6f}2PO?V?Ar9h^HyIqNgP%bGwGq#ZOEvg=aHUqUT*k>KVGOeE$@~)9+lmbqAwuW@^C8$u==P%_a0gAM%UJYiFW9PZf=5@oK6I; zpjR|N5K_TFUpSChzvBEI1m{jg1V4ilqXenkP@)IZ+Kj-b`wvLJy&?K%h1DpWxBg)) zs;ec!Fe>=I(9|sb@}FM_-dw;zPVetoIGQUXnHF-5an^3fS6`rhgFkcHE&oKHdKnVM z30gQi-28uNITQ}WdN*xOY@HuJt{L>r5CU_9O5?Lkbk^6&E*S^xMD%FC&7Rsc!rnON z*!loti|%BVwaGtT!(zTy7Wu@ea8*Jh?xP;Zds z-R($wx59#c(0Fj`?Qr)G=t?oKO1dWC9Fh#9s9fpbWOi`P*$d~~e(A=G7%tBw+=<_> zXaZte>g?D%-0XJb@QVq(+fwicx8-+#d%e^jbSa?s+{ZUk*bK8J`e3pc?+A)@VF?Bk z5;dUJpFU^Z?z{{lI>*+n{V7Oyp>AAfayFC5>Bq>{vS{dpp>*&xV1A%xf97>bTN5!P z$l8ki?%~qlUtErA-U8lklUl#(_ZF3~%>HT>r@{a~ylAG~BAOf!Q=tYT_*cA$5|8ru`1CV{#PSlRPh3l`g8&dLFV1l|BrFb8>0giURS0g$Oa zZ2*PUo3`T~zx%M|>EX!PvpY3Ha5}2jcr2C=uf-L}WKPzg8=)4f=1$ZKLSiz(U*Ui*a2*Jj zu&l8Wkt)DwNIl@lr7#zuk5$2m`O+*|>dgw2phE?<14ib3G9>Db1$Cvb__0|3=UR>a zYa}XZeCBn#=mAw9yuQ(>iYIYpAB4ytOM*y&g^(Jao&JZw51}-QY%dy8VgM|g6DS;t z6h>eVJv_?GOhgoiVht!Uz_s;qZuAWTKm&?C*2@4O)K#4-XTs7)5y`G8FgG(5|#{gtjJ%29NG{-Q`AqtU@f9G%_s}3vLVI2XaI9)8U)%gi*@@c~4FjIG&WR>$fBr zMaKS9Nqkg+zxA97raqsUr{C2u87n)R6vU@HqR22ie1@j2Hi{S;X)9D+`Re1e%99OuP6Ao0Zk>bqZGQlFEAp=75}U zqHhx>sV`rgg-4Z};4BO-`V!NfVyOpHGSV+C-5~?WE-BvpUSH~fepdl8oth>#g8W0_ z&ylLvwKi<-J(}MHtdW<|Nyyj+-Incu2^M-@t`EL6{-Q zuHPdwv!7fK^Co7`oAw-&%9>iqI$Q}ttJC$LaRjaaB?SqS^{mSk!H0a<30#*wvnZ}1 zKSe2V==XGHo*!Uyr1^gO-rW^%YlTzjiid|iC~h3nxtbAW~3 zDhTQu0*?Up*5B84R(N4T><3A&)%!9GHdynDXFCpv!V$G6BoF|5%lfG~=!`q-KSV(+WWNWKCr;(hvDVgq0u z`*DlxoxFJ}y)cM_kiiiPxt%+|#T$@;+PS^KQI8*hgn`GVfWRRGL35b2ARxoCsHN@3 z&5^D+gcknD?4kvp88d;%sqfF6A`A+{*z4okD-a~qkN>DF|5(o+61ZFB7 zzoZh}3aINw;%;$w!)NGmxZ5GIeu!chCM~(24wuR*u!^t#);NUTXRKuSz$U}G4sXqA z;fPJ9Rv^-BoiRv-4jk=y4jKx5x|osrN0TrD8thH^yzxk>v!Z{y5Q;I&Al@j(G1D}e zX*bpc-oHnL$sa1GtI02JgFeGE5?QK{@*I#1i_o%tEn+>W$vYf7^YYLh?5V&~)y{B< z%nApuOdR9WNf!m~SR%;Ye1HH5RtSAUGT@#EGC2Odtpc$rh#pZuTCk32_#(Wgw`14C zkdRUFWcd>Ab7z&2oH(wxW9rA=ZxL5A^+sQ8j`&I`G{lMEsitrc+kd7|K3fq#+rg&? zXfX>wtypy;8Gkg+D?i$_#qT4WqA}9lifqE9?VcgW)~=AJxJpJoyHPye>;gcZpUXKF zmu+2!Q6M~9*8}^*o^3f@DTk;AFe7a*2Mt>@`VK#9nf5VL)pDa6;I8~1hZzv9nyZi$ zH6!V?Pc&}Xe0O9_?&~sI*Fz128n%!%>r~Lki$2~JtSXuuYhgiZ(gTP+cp(tLuIh$2 zbiEB?uNR^s&Kc>{Wuh1tb0GN7JYc<#a^;y8(`f#vc(nUrP`t5!_&)WJNx$miW0r%L zRx!Xt>@m&V#*X)y$x%?9(ymE{3&#aH^S%FGp<R#iF#4Prr#$df1t2} z)5-1=T?z`kXDY|rYFBI{F%i*_KTk9IsN;4IH^Mm%H@G;6Gq-3W@_$$6M@Q+ksz4x| zg(iWmA_huz0g>XqwVSh05SqiD!W21c%Eo&mD#!F6F2K(gCkkv@?ssPMl>>dxz_C?q z0cuh=VE2%jqbr6h6Ji`?Dg=Vi=ia14hcM_vb?0{cZF(e5-J2d75JU_RZ|1mxjK*9C zJQRvhxA$R)n+1$fehf<>k#@ou5y-en^%|8h!3aBO?c{*~kM`S;oYaa%@}BeSx_MQ% zjw*ElalNxZ9A+jShIfFS%&$5!5eo*~1#QQ{i=Myo5T%-%_9$#6@zJcf)ytvPfeN6Cz!OFj zN0#r$S`@z-Ox~HuY^4p%9^G(508I zp?uLoaA;!-`v_N<6gV}sMw_1ZJ!&T7*92LWypdjD9D`Fdi&Ioag_y+$vX?)l=Fb## z^24((!&Ph-9!OEL(fU;b6yp?Q5npLKYOwIa1T7c8EUwt9F^jl3X9z@9)#2acaezo? zu$JzPVS^gc#v14xU=ybCvy|gajtx9nVXhT}WdKGc)^K!IYc_^M!$$qRYk<~nJEot_ zA9yCskEz$OLD#}D5BHf(S`o}mxcAcl8S(_aFbtm+!emaYpx-r{^XYo2#eY4&UMZ;P z^yw}AR*&~b|4I$RFA!Z>Eg4~Ob2S^fhZ7TPdu{L3D)_~0z=aa27d!@-qevNN5wD+~ zWd7!J@TKG=u&*S!*HADp`a)8n2_6U0p%tT+xAX%&=1E@J@X(6pLx(>x@>)zqjXliT zMlrdk(u=oRCV>YrwG8-)bi%KW1e*nhs(ZI^#zS|In+@4yf9oj$#YjN-4i)&$&Ha$T z6a`ou8;Jt1;qxrDjzB8ory1{9V)|riU1`hcIOxiwRRjbzD_30s)37KY?tzGAvp^oJ zpeTnW~%H@+2R!2!V89ULE9G<&Cd?j)lQP%0Jzb$Qvjw=9$8`M2tFQqcfr$Q&( z3-n8UZ>p~i(*Ps!V}BST0fZcP(m*bpQc{+pd)7Y7EHcft&Ymr$mZ6f#?*>Z96+G6= zhYp<3(j+qlIS3TF%6)LZya<9?M+^Qs+&@m_%n~AR5n=hcLHZ46^yzs9g@IA>{Ww7G z7JK(WU#t;k=d1ByIEacM#|~#`zEdB;`pz3aV2#jlKt@0G()6dEhK|G|jB? z3Dxsecn`gv_;Zl+Mrk2hXKe|XyON-7wIdd0Cu^DH%cA-^QTi<^;{jQNnYH8NG zVd&8&Oav6l1zYW+3EB*zb^;8m=u%~+Blv6|)X}`qGVFL~WY)iE&=AnEL>b`lwb+vt zu7g6)t02vxs?RsHoQ~PoD;Ut~ILg!MFJ|hAFA|o3M*_dK#Rv~G>ckEOvx*m~n_l&) zgqqyB45=ANKaxqFU#Wxxmp8=HWdoQ3#Ax<36K_3O1qJ8NNJYrW z&;nR;*VY6O8XdLQ6(claEzf>ilJ10Pc`&xBwF?yjxfvAaFZKbPn)OK2^;Dj#mak9B zD`K#|7iP0YI^i0LCJp9!fAg4xl3OI3W}ryt(d?i@RJgKg6T{#wO|L^4?bGlfB05?^@y~vnN>->y7Qm;X?`aeeQ&6K0aMX`#p+U6+xAU*{%AB{6e zGpf1A*7M-CBE2CO{#*V=G6wQjQAqdpCD^m&GG}f?>ES#sBEp~x*t1>fj&Wsc`f!2J zr5Ga$p)sC+>x`ah)W)V=oS@JwB&qq{sB(ic!;I5|H3Z{Ffkf-?zDeW(g@GLo`#wMDOQPgvi7N1#YhJf=P`=x>H#H!q#i{w zt@@Y$;}*D0nj@l<9Z|xi@zR59NRBszmh3A2CBp5U&hrN*$I9ZkwJyp za{L0L%hcBpApf!`hN$-rcfyr>@R0;8fr?4TBB`hrcUS~O@pURyeDSgc*(#KYltC$q z?nnVGh_PXXeAbc$^C?V%_CpHefRi|VtpN)?ZBTkZ*EXeOmS9p4YiujW zL#rmMX&jnE@CtPfa>~Q8uMnPW2>HuF7Lq|m8C6zLB&i&J2FrjlEkeVH?VHg5$hT+ zc+)^6w* zFC06`1G8Z*XR5Ail%J~b+UCu#g*$s?En-Yea~^Gwtrjy^^87M})GrxLbuk7{ zt^w(u%f*K0ta8zohA=J+%V6^yNGbs};o7Rf*1~esDLa#EdX!9dqU&l5*z78+!!nLS zz5LX+80e3CTt0C)K)ucl` z4G9%quUQEXFgZdqo#(jb{bwPiO2wbo|AkRi7!s2W?r_HDzc@I4jm3uj4qkS0K`k@m zrj(V3x*ge2CEW1W2Sc9q zhgnhb$vPC1bW==n@&b=weQP_-QPEKb`Ky`F(8=SpB-J!Y>w!6c>|JT1lGNjvj&V_I zPKr|4cf=p=xW!E*t_mKN>WJm;YJEu`9{mRlpmdAFdLFE^ZL^1=Mm^-Ob+Npn@4X}p zc0!(Rchc`;JNDKE2IAx5_(I4!0v%~xXgn!8d?_@pLk2z5!lR3Y&7KF$@MxMJ6=D!puQ@}lolNs(jE z^QB~i5sz+XbrJvXZV19C zuLbobViik4s?qERy5fVVJ$(@gB3Ms_UwQdQE)!^AvP(*w`i|Bnomo%{ zA12_l!)?O4cF5Wa#0<~saunHm?p$Iunh&TJ%n4%~0VW~9=|95g)wpcavk~|U&$vmT z9(~E)(MtJj{?IG8ba=s7BD@52M>D0J1BbpyYJy-E6D8v-3+SNSWH}f*I?i2>s~Ru` z!myZkO}DunjY97?MZR#VTiusCp^Rf&MP^RI{#Vo0as$!Mpywaw@lnG~b{oSm&iqii z=}6Z2FxOG2ch*IUIu^+d-@ zu@Ee&vgzXsQC(hvmWLD1PAn^#AZGtk8~NrZ+A*X10-DMNidcBM9z4(|Ay)R1;=>v2 z3*Oo%u0dh4bcaO9U~IFSnU#dH#pHFpCN%V9um}_Sd((CTE!*w?t@nvpZyys`O~s9t z9oQc*9)DYmxtn@CF2Ph~_;M3S^oKe;!b+>HCrxiad^s@bdt;PUjYd0Chf3;g2OYQ} z7?RWvMiQk<_rnh}bAY+WVW5nSBLmh_H~o>u_5gKweyoyCOy+WJQ2@AEXMg&A`4`EMK^929*apQWNCk zxEYo{XCM|t(^Ms|sK{Y2Y0Akfv6!MQzRVigfV8B}ETGAB$Pr5Tc+&@Z6~cnmWi}nj z*uP5ZrxVJm$cJz4@yV$?t=RuU<1#MVep9HZ9IFN?hD65!rfUz4={Gy7?*l~`W6grt zAvZ@PK8G_`4;1y4B%09>ZA7KOi!?{FF&`Tg>^{Zq6_q$NS`xuNVtVBge*o=q`dq`{wd251rHN{#e(2C`T2C>DcJP z7$))g3yE8TKOW**Aiwtw!N z`~Hth52Jr#Ze>bxR5wO9K8dM$B$BNYo^#pe3r=ig8%cHP>aJ!n5a;dD$1L&Yky^)s zESSN=T&u-auY4rKjfmqlzjX=+yr?~Dkq_RByFz9l!zcsgk!zZrmE6!1N6F&zTpxp( z-9Azlwl_}&0O0KHHDM5`$IzriLZhjevV-1(9L$SV*QNEMU2TYAbPVT3qrK~Iakv$` zD%kOM;(+lwt>r=gG8`vHza1;_f1rB>H7{bonUG=ctmfn_N)TFCJyfIGMy2lbBrr`- zr>}q+?DYT#Awf^ZY!l0)jRP|(;wXs%ZvYUt6zMQ|j(&VUC`AXIIr>UFuLO%UuHEbL zvFT>%vI5;f4ECt21JYL8%Hg=D{oym0+JK-Ap5xb;+z{0uVja~ho!JO%nydMiae+#o zDjG6QT9-yrl$oU)@fMu%pSHP)p(sb`1}5J;Bi9N%dgY zc7c|}gZ0RX{aGSv1YQf!;o!UP!5p<$ zn6oP*;tArJ4w_cJYIV1wSeJBY&~A`+ojJ~Ozw{b+lY7`UT|JxGw7y*8kw+u-a)T&x zL;q_-!2;e52=6)|>?TK{>#Cxq|3`dAmfkSbLGndC*+x93l!WJ+pc`}I1>*|BO4hQb zoAX38xw2sPHW`K}9y52Ikq}8?Fw3Mq3c~zAGW|fZq*S?whgC}KvwgANc!1r?UvB26 zle6(tl=j(?(91ATQvKJL zMrD_mxw+o=1arjI(I}I(o^`qHZL7w`uutVD{R70pK;x!bMM821W*B=Y9Hfjsj{fmP8fj zM*}MBR8^_g>qlluiEF6GBSf7u#Kl^&SZ^)+&yHXyZ5@EofM1b3PIgU(6mQvhZot;I zu#95ehL_cyrfE>DMa+j1=1Blqg1J5Tp~9Gh?A9pT1|&}AZ2nYFj80vEQkOk*b6{)B znQz(_dHnY;hS&WW5W>q-ktXIo9+H3!41=IH7v0RXy(68Jm@!8w*j)_MK!97H;WB6A z^!yU}Lthhsd3>{Nu+q?Mn3rv4s2K0S7x#PyZfi`tE^)z$UDZc2B;KRq#YXsMGVNS^ zszt}3d8B(LRK{5!&>!%n0X9`Bbqx)~VQ#sLt+iqDAfRfW=hg%kHqa5X8TsCU#SsVb zxHqc^HOe&bW}q^6*C(;N15H>`3ybQp<$$uoG{iEa8%`8@bxT7`uFktu?Y1I!@lqGJ z(;e$>$0@}7bNU@`0VELv5xNXGr%TX+W3+^{+h~PoSgwXrvBK<4))1VG;*DKD%u5q` z&bXLTnvMuf_I@v1TBPU*?7=ZG4;&Ik_#sjg3sg1SQ1F7^arU!*{S1BYx(Fl9{rEWo zW6XGB=6`>J6Vifg$>hw~SV1N6PbmfaAmM2+;=RWL+|)^*q1Q^|7P!A z>YREz!%Xrhz9J~~U1^oJMa>7 zyl1cWz*gjD{t;RR8dS)s+naZ3t?>R*ynt1k=bMSn$|JOhu#v_uv!{fY)TmVgBg9JqETzzk7}F4|tkJ&~C+J*+ zz*QeFL8xP$Q&TMj4G{!bqWc(5HkoIFBnMy4To|)Wnwq8RLAQc-^ju_7CUQ`h$Si)E zV+RK*YXyMuaVt&taODs@wV<7FoIMv)rgD~XEMu?0HQ9SGT#joLCVfOjl`S;ItbmZ* znT_ieH~7!QV!l{d(hOG^*Vi7uQICHjmM_?XZz_QG%zSO-tnr73ttY7j)xGPMVaLFA z3T|!dkg@xHdGLOcXI6-yeo9KFmX+D8O6h^kAb-pS-HOeqeh!90h%&VV&ic=J ztpKIGS!{HutvgHxNoL=o%}H5_<0j9QN9PGoz=DguwJV@myP$V6ar;yEeQ82!HMC>4 z%;=CPI+z}6@o3zdT)tL0=Lx+Yk79B@9EvmG`(m-*y-a47`Hu)~qz{}v5SMUEbcAQl&Kq#FSILfMF5k~xl`tCn ziC9Z+E7>R)MoItMe9;#6@sPVkVW99cV;OLtcH6V}6;Hrym=YXO_85~UB2is661>m)T7tqhB)9gYZuA?K&B7|TcB|OUCZQE2wgp|<%Ty+sLJQTqA{RqQc{~g zcoEg|c>1w6z-hc}0)b}5v1l-bU53#)_1Y1M>yEHoHmqXv#H44s7hbk$-o4+u_(1iS zR%JpB{yqQfg&DlO9Mio9f$8+_$xG+a(@=w|Y329%-Ti#b$LT2nKhQ=zU0Bs;7epo_ zg|-O(>QT358i2e&u4R%jt5<7L_c?x0D|obkTd`~K;NS3QrjK1*NqW$$6~aDq<9W-GyS;VgNRWeM{wii#tKx3(7hvXBkM^yePUvo}z@$TaDyg zmu(*-Aer6Yl(+0O@UjS9__nUInN?B&PuF8|(>`ESQmqkxFc4{R<1_2+q0p7Kh>M^Y z%BZ17m#wvV>htQwyktwmby50Fcl6C%6UkWH-WSS+S~y{+?2y&Aw7e-_rjU0Oqx5BH zdr!9n&Er#fyi&4@u=IVUh7u&M6$;Qsg_!#<(=Oa@K@DTX)kDU?5bO>XAKy7!$hudq5bInwuZG%A7}xB)^Pv4GwB4Bi9I$HBg0-L46maRswZ9i`-lO&A`nZYn(H{1$A-j#13&bMS(zc=h8c{?`x} zMZC>E{OF&nI)MarHeMKL;emEWR=|uxVkoy?M)@k7u1-vl`Z+a3r~`DuKKN;zJB=h4 zyxS}~zuPMu7*)avE}6yhUb++eB5kY?Xe|3U1$_XLu+Wwc6%)4oa>E(BP85uJ!!)k$ z4DcW_gF>C`^u1w)K zy-XW~qQktrD-k3Qyq#MOM`o)##`tgqGy9GIRGWZN$a+YW5cFfg`9s|261vE5tgmL< zPtkz1sVnPDL`C%TsT?UW4CDv2{aWwQalplZQ*m}jwF-Lg=zt~>50fL7uNBL!2M;r< zA*pCH>t^aK4*42ANw@LpwTRqQsY^4d(?&hA=m-fG+-K@0rK8>2(57C3m%b$p`TuW1viVq40xz@u4HV1{S>G- zy|2ZJU1Q6b;J3&fu;)z_+N(+s+?%Dsx#`-8LD@!H0*$J_1s~-eqyh9Ln_Y<6rRklI zkzCkanRBCu`rFR`_dR`Jtk>E+5Os#(g8WIAPL=Yq-BI_M$*q)B&RsuI>7HXnftY$` zugB>aLGkbmu)Hj_ij8D9{KFj-{b0Nj5$=wO)56-^K^JV3ohGZheixu={-t9v$INf< zxp1XslwE=&El9b2y%)UKW&g|3`l#UplId2yovPb3o}J5EV(7p7q?BW3K0xb~T}|Wkr$L z@UIT}YI=IB`>|n2{Dm=I7#U9y;eQ%as?1zKXWJDS6Kx^Q*4)hwVw9z`Z^bmPZ@Wu=@?mx%MYsecC>PM^isFpy0zKrfp4phsR53n8FQyT#X9;2SH z66$z9!`8{-ef7v}&ZuBfaLs7O2Z6Ce+IQ>Nwp-A=@|(9|%d#xn^+-%r;o|3hA8*LQ z$7bZinF`el1tCwAyxVs@AaEla8IKw2Xvm6uKC{9w z5cDn}zLW}wlb5j3;|LY?jj9TTgAj(xh9?G_XT?qS!9Lke-grsq^zkJatL=Nxqi{Wn zoviKao~-oSoOA~c=yt&D_AkiiT6A_zdo_%qm_SS!BypA(k+wG(ZdvwBUs8fVKKWoqtx&!;$TlUl`vg{Vee6 z->V*t!^ihkmr|H9bUvmjW#+6TE~)LR86i6e;?u7BTK3oYhz$7*pnv4gp5 zZlaogMOka4$eNJrm)gZ9RXT%2YF-_5m0QEnqgw9lTKhCPq8UVfgkV^^jYE>Wol79} z8}t|=geqG(=HwdXg9~_+$R9b0tF$E9&e^Q9#PoY)#3coQm5J?m60yaI;=ia`ne(?! zLgE}TqS_S5n{>c^QgcT84j#pFE`-XHxm^GS`L!Ue{qwzx7-Iwsr+yks_sGmTqd8-n zy2lEa*4Yli%D32pA5k##41<4^hRW_npE{h~B2(LKCLDfB4Gv)3&3MeMU`zVFZ^lUc z>*QlI{RYx>Snbz5oNNMhSa}<%vb9gup7I71=o(Lq`%>0P1bxu*0W{ZJ=t>$)_2$U6sp9nI# zMr)J3I;C;1*7PQy4p9Yl1rw-&H!IVwGVCuYrl!?L3AC4V*BY(*)zrn z2?um{_DQ-Ttq|0@Q_tVS%zNrxDVWmhTmivsT4^z3&#DMHEXcvA3hx=*!()&z&00a; z=5dujuuQYA6Bu0rXjH~#w3-w67q1^RJXf@`)PI?)jDu!PZ}_Epyl(X%w%T+fANP;{ zp;~WSyDM3teemHx#qGaT;39&38-(bc$JEl8cq~T%MG9 zaCf^UP@=dw#kboBg7a31gY;%w(nK6y$MM&Vkgf5&*to+m+!OeH1^6^ld~EODkwPjg)Qd^JHlazxm}G z9(@UA3|oPhK6V-i{3M*-(hZ#P7Xw)cJKQhnyHZ-mL`i)$rXYa6^Jh+2HATwOPGWPP zyt;gDfSCV)@Xe#_#d1d%Y>OY8ZyTqA0+Dz5+;9eOY

w)iK$UEZB`7|w8R@QQB3YxK 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 BeRTi; literal 73080 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

)DG9ppOT!m~PQN>7VspROGYmH3@#^YX0lD0NZ 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 From 4d81deb440cf2d0ebda467c89f3a0a4b3f86f002 Mon Sep 17 00:00:00 2001 From: "Carol (Nichols || Goulding)" Date: Tue, 22 Jul 2025 14:30:29 -0400 Subject: [PATCH 3/8] Backport changes to md --- .../listing-20-10/src/main.rs | 2 +- nostarch/chapter20.md | 702 ++++++++++-------- nostarch/docx/chapter20.docx | Bin 96454 -> 100002 bytes src/ch20-00-advanced-features.md | 2 +- src/ch20-01-unsafe-rust.md | 262 +++---- src/ch20-02-advanced-traits.md | 84 ++- src/ch20-03-advanced-types.md | 46 +- ...ch20-04-advanced-functions-and-closures.md | 53 +- src/ch20-05-macros.md | 45 +- 9 files changed, 652 insertions(+), 544 deletions(-) diff --git a/listings/ch20-advanced-features/listing-20-10/src/main.rs b/listings/ch20-advanced-features/listing-20-10/src/main.rs index fda5179af7..b757e36323 100644 --- a/listings/ch20-advanced-features/listing-20-10/src/main.rs +++ b/listings/ch20-advanced-features/listing-20-10/src/main.rs @@ -1,5 +1,5 @@ static HELLO_WORLD: &str = "Hello, world!"; fn main() { - println!("name is: {HELLO_WORLD}"); + println!("value is: {HELLO_WORLD}"); } diff --git a/nostarch/chapter20.md b/nostarch/chapter20.md index 7182bfc025..8f134125e9 100644 --- a/nostarch/chapter20.md +++ b/nostarch/chapter20.md @@ -9,7 +9,7 @@ directory, so all fixes need to be made in `/src/`. # Advanced Features By now, you’ve learned the most commonly used parts of the Rust programming -language. Before we do one more project in Chapter 21, we’ll look at a few +language. Before we do one more project, in Chapter 21, we’ll look at a few aspects of the language you might run into every once in a while, but may not use every day. You can use this chapter as a reference for when you encounter any unknowns. The features covered here are useful in very specific situations. @@ -61,30 +61,30 @@ that holds the unsafe code. You can take five actions in unsafe Rust that you can’t in safe Rust, which we call *unsafe superpowers*. Those superpowers include the ability to: -* Dereference a raw pointer -* Call an unsafe function or method -* Access or modify a mutable static variable -* Implement an unsafe trait -* Access fields of a `union` +1. Dereference a raw pointer +1. Call an unsafe function or method +1. Access or modify a mutable static variable +1. Implement an unsafe trait +1. Access fields of `union`s It’s important to understand that `unsafe` doesn’t turn off the borrow checker -or disable any other of Rust’s safety checks: if you use a reference in unsafe +or disable any of Rust’s other safety checks: if you use a reference in unsafe code, it will still be checked. The `unsafe` keyword only gives you access to these five features that are then not checked by the compiler for memory -safety. You’ll still get some degree of safety inside of an unsafe block. +safety. You’ll still get some degree of safety inside an unsafe block. In addition, `unsafe` does not mean the code inside the block is necessarily dangerous or that it will definitely have memory safety problems: the intent is that as the programmer, you’ll ensure the code inside an `unsafe` block will access memory in a valid way. -People are fallible, and mistakes will happen, but by requiring these five -unsafe operations to be inside blocks annotated with `unsafe` you’ll know that +People are fallible and mistakes will happen, but by requiring these five +unsafe operations to be inside blocks annotated with `unsafe`, you’ll know that any errors related to memory safety must be within an `unsafe` block. Keep `unsafe` blocks small; you’ll be thankful later when you investigate memory bugs. -To isolate unsafe code as much as possible, it’s best to enclose unsafe code +To isolate unsafe code as much as possible, it’s best to enclose such code within a safe abstraction and provide a safe API, which we’ll discuss later in the chapter when we examine unsafe functions and methods. Parts of the standard library are implemented as safe abstractions over unsafe code that has been @@ -139,13 +139,14 @@ variable, we know these particular raw pointers are valid, but we can’t make that assumption about just any raw pointer. To demonstrate this, next we’ll create a raw pointer whose validity we can’t be -so certain of, using `as` to cast a value instead of using the raw reference -operators. Listing 20-2 shows how to create a raw pointer to an arbitrary +so certain of, using the keyword `as` to cast a value instead of using the raw +borrow operator. Listing 20-2 shows how to create a raw pointer to an arbitrary location in memory. Trying to use arbitrary memory is undefined: there might be -data at that address or there might not, the compiler might optimize the code so -there is no memory access, or the program might error with a segmentation fault. -Usually, there is no good reason to write code like this, especially in cases -where you can use a raw borrow operator instead, but it is possible. +data at that address or there might not, the compiler might optimize the code +so there is no memory access, or the program might terminate with a +segmentation fault. Usually, there is no good reason to write code like this, +especially in cases where you can use a raw borrow operator instead, but it is +possible. ``` @@ -177,8 +178,7 @@ Listing 20-3: Dereferencing raw pointers within an `unsafe` block Creating a pointer does no harm; it’s only when we try to access the value that it points at that we might end up dealing with an invalid value. -Note also that in Listing 20-1 and 20-3, we created `*const i32` and `*mut i32` -raw pointers that both pointed to the same memory location, where `num` is +Note also that in Listings 20-1 and 20-3, we created `*const i32` and `*mut i32` raw pointers that both pointed to the same memory location, where `num` is stored. If we instead tried to create an immutable and a mutable reference to `num`, the code would not have compiled because Rust’s ownership rules don’t allow a mutable reference at the same time as any immutable references. With @@ -187,12 +187,10 @@ same location and change data through the mutable pointer, potentially creating a data race. Be careful! With all of these dangers, why would you ever use raw pointers? One major use -case is when interfacing with C code, as you’ll see in the next section, -“Calling an Unsafe Function or -Method.” Another case is -when building up safe abstractions that the borrow checker doesn’t understand. -We’ll introduce unsafe functions and then look at an example of a safe -abstraction that uses unsafe code. +case is when interfacing with C code, as you’ll see in the next section. +Another case is when building up safe abstractions that the borrow checker +doesn’t understand. We’ll introduce unsafe functions and then look at an +example of a safe abstraction that uses unsafe code. ### Calling an Unsafe Function or Method @@ -203,7 +201,7 @@ definition. The `unsafe` keyword in this context indicates the function has requirements we need to uphold when we call this function, because Rust can’t guarantee we’ve met these requirements. By calling an unsafe function within an `unsafe` block, we’re saying that we’ve read this function’s documentation and -take responsibility for upholding the function’s contracts. +we take responsibility for upholding the function’s contracts. Here is an unsafe function named `dangerous` that doesn’t do anything in its body: @@ -222,7 +220,7 @@ try to call `dangerous` without the `unsafe` block, we’ll get an error: ``` $ cargo run Compiling unsafe-example v0.1.0 (file:///projects/unsafe-example) -error[E0133]: call to unsafe function `dangerous` is unsafe and requires unsafe function or block +error[E0133]: call to unsafe function `dangerous` is unsafe and requires unsafe block --> src/main.rs:4:5 | 4 | dangerous(); @@ -238,11 +236,11 @@ With the `unsafe` block, we’re asserting to Rust that we’ve read the functio documentation, we understand how to use it properly, and we’ve verified that we’re fulfilling the contract of the function. -To perform unsafe operations in the body of an unsafe function, you still need -to use an `unsafe` block just as within a regular function, and the compiler -will warn you if you forget. This helps to keep `unsafe` blocks as small as -possible, as unsafe operations may not be needed across the whole function -body. +To perform unsafe operations in the body of an `unsafe` function, you still +need to use an `unsafe` block, just as within a regular function, and the +compiler will warn you if you forget. This helps us keep `unsafe` blocks as +small as possible, as unsafe operations may not be needed across the whole +function body. #### Creating a Safe Abstraction over Unsafe Code @@ -296,7 +294,7 @@ Then we return two mutable slices in a tuple: one from the start of the original slice to the `mid` index and another from `mid` to the end of the slice. -When we try to compile the code in Listing 20-5, we’ll get an error. +When we try to compile the code in Listing 20-5, we’ll get an error: ``` $ cargo run @@ -351,7 +349,7 @@ fn split_at_mut(values: &mut [i32], mid: usize) -> (&mut [i32], &mut [i32]) { Listing 20-6: Using unsafe code in the implementation of the `split_at_mut` function Recall from “The Slice Type” in Chapter 4 that -slices are a pointer to some data and the length of the slice. We use the `len` +a slice is a pointer to some data and the length of the slice. We use the `len` method to get the length of a slice and the `as_mut_ptr` method to access the raw pointer of a slice. In this case, because we have a mutable slice to `i32` values, `as_mut_ptr` returns a raw pointer with the type `*mut i32`, which we’ve @@ -367,7 +365,7 @@ items after `mid` as the length. The function `slice::from_raw_parts_mut` is unsafe because it takes a raw pointer and must trust that this pointer is valid. The `add` method on raw -pointers is also unsafe, because it must trust that the offset location is also +pointers is also unsafe because it must trust that the offset location is also a valid pointer. Therefore, we had to put an `unsafe` block around our calls to `slice::from_raw_parts_mut` and `add` so we could call them. By looking at the code and by adding the assertion that `mid` must be less than or equal to @@ -375,7 +373,7 @@ the code and by adding the assertion that `mid` must be less than or equal to will be valid pointers to data within the slice. This is an acceptable and appropriate use of `unsafe`. -Note that we don’t need to mark the resulting `split_at_mut` function as +Note that we don’t need to mark the resultant `split_at_mut` function as `unsafe`, and we can call this function from safe Rust. We’ve created a safe abstraction to the unsafe code with an implementation of the function that uses `unsafe` code in a safe way, because it creates only valid pointers from the @@ -403,18 +401,18 @@ that the slice this code creates contains valid `i32` values. Attempting to use #### Using extern Functions to Call External Code -Sometimes, your Rust code might need to interact with code written in another +Sometimes your Rust code might need to interact with code written in another language. For this, Rust has the keyword `extern` that facilitates the creation -and use of a *Foreign Function Interface (FFI)*. An FFI is a way for a +and use of a *Foreign Function Interface (FFI)*, which is a way for a programming language to define functions and enable a different (foreign) programming language to call those functions. Listing 20-8 demonstrates how to set up an integration with the `abs` function from the C standard library. Functions declared within `extern` blocks are -usually unsafe to call from Rust code, so they must also be marked `unsafe`. The -reason is that other languages don’t enforce Rust’s rules and guarantees, and -Rust can’t check them, so responsibility falls on the programmer to ensure -safety. +generally unsafe to call from Rust code, so `extern` blocks must also be marked +`unsafe`. The reason is that other languages don’t enforce Rust’s rules and +guarantees, and Rust can’t check them, so responsibility falls on the +programmer to ensure safety. src/main.rs @@ -433,16 +431,19 @@ fn main() { Listing 20-8: Declaring and calling an `extern` function defined in another language Within the `unsafe extern "C"` block, we list the names and signatures of -external functions from another language we want to call. The `"C"` part defines -which *application binary interface (ABI)* the external function uses: the ABI -defines how to call the function at the assembly level. The `"C"` ABI is the -most common and follows the C programming language’s ABI. - -This particular function does not have any memory safety considerations, though. -In fact, we know that any call to `abs` will always be safe for any `i32`, so we -can use the `safe` keyword to say that this specific function is safe to call -even though it is in an `unsafe extern` block. Once we make that change, calling -it no longer requires an `unsafe` block, as shown in Listing 20-9. +external functions from another language we want to call. The `"C"` part +defines which *application binary interface (ABI)* the external function uses: +the ABI defines how to call the function at the assembly level. The `"C"` ABI +is the most common and follows the C programming language’s ABI. Information +about all the ABIs Rust supports is available in the Rust Reference at *../reference/items/external-blocks.html#abi*. + +Every item declared within an `unsafe extern` block is implicitly unsafe. +However, some FFI functions *are* safe to call. For example, the `abs` function +from C’s standard library does not have any memory safety considerations and we +know it can be called with any `i32`. In cases like this, we can use the `safe` +keyword to say that this specific function is safe to call even though it is in +an `unsafe extern` block. Once we make that change, calling it no longer +requires an `unsafe` block, as shown in Listing 20-9. src/main.rs @@ -459,40 +460,41 @@ fn main() { Listing 20-9: Explicitly marking a function as `safe` within an `unsafe extern` block and calling it safely Marking a function as `safe` does not inherently make it safe! Instead, it is -like a promise you are making to Rust that it *is* safe. It is still your +like a promise you are making to Rust that it is safe. It is still your responsibility to make sure that promise is kept! -> #### Calling Rust Functions from Other Languages -> -> We can also use `extern` to create an interface that allows other languages to -> call Rust functions. Instead of creating a whole `extern` block, we add the -> `extern` keyword and specify the ABI to use just before the `fn` keyword for -> the relevant function. We also need to add a `#[unsafe(no_mangle)]` annotation -> to tell the Rust compiler not to mangle the name of this function. *Mangling* -> is when a compiler changes the name we’ve given a function to a different name -> that contains more information for other parts of the compilation process to -> consume but is less human readable. Every programming language compiler -> mangles names slightly differently, so for a Rust function to be nameable by -> other languages, we must disable the Rust compiler’s name mangling. This is -> unsafe because there might be name collisions across libraries without the -> built-in mangling, so it is our responsibility to make sure the name we have -> exported is safe to export without mangling. -> -> In the following example, we make the `call_from_c` function accessible from -> C code, after it’s compiled to a shared library and linked from C: -> -> ````rust -> #[unsafe(no_mangle)] -> pub extern "C" fn call_from_c() { -> println!("Just called a Rust function from C!"); -> } -> ```` -> -> This usage of `extern` does not require `unsafe`. +#### Calling Rust Functions from Other Languages + +We can also use `extern` to create an interface that allows other languages to +call Rust functions. Instead of creating a whole `extern` block, we add the +`extern` keyword and specify the ABI to use just before the `fn` keyword for +the relevant function. We also need to add an `#[unsafe(no_mangle)]` annotation +to tell the Rust compiler not to mangle the name of this function. *Mangling* +is when a compiler changes the name we’ve given a function to a different name +that contains more information for other parts of the compilation process to +consume but is less human readable. Every programming language compiler mangles +names slightly differently, so for a Rust function to be nameable by other +languages, we must disable the Rust compiler’s name mangling. This is unsafe +because there might be name collisions across libraries without the built-in +mangling, so it is our responsibility to make sure the name we choose is safe +to export without mangling. + +In the following example, we make the `call_from_c` function accessible from C +code, after it’s compiled to a shared library and linked from C: + +``` +#[unsafe(no_mangle)] +pub extern "C" fn call_from_c() { + println!("Just called a Rust function from C!"); +} +``` + +This usage of `extern` requires `unsafe` only in the attribute, not on the +`extern` block. ### Accessing or Modifying a Mutable Static Variable -In this book, we’ve not yet talked about *global variables*, which Rust does +In this book, we’ve not yet talked about global variables, which Rust does support but can be problematic with Rust’s ownership rules. If two threads are accessing the same mutable global variable, it can cause a data race. @@ -506,7 +508,7 @@ src/main.rs static HELLO_WORLD: &str = "Hello, world!"; fn main() { - println!("name is: {HELLO_WORLD}"); + println!("value is: {HELLO_WORLD}"); } ``` @@ -551,14 +553,14 @@ fn main() { } ``` -Listing 20-11: Reading from or writing to a mutable static variable is unsafe +Listing 20-11: Reading from or writing to a mutable static variable is unsafe. As with regular variables, we specify mutability using the `mut` keyword. Any code that reads or writes from `COUNTER` must be within an `unsafe` block. The code in Listing 20-11 compiles and prints `COUNTER: 3` as we would expect because it’s single threaded. Having multiple threads access `COUNTER` would likely result in data races, so it is undefined behavior. Therefore, we need to -mark the entire function as `unsafe`, and document the safety limitation, so +mark the entire function as `unsafe` and document the safety limitation, so anyone calling the function knows what they are and are not allowed to do safely. @@ -568,18 +570,21 @@ function safely. Likewise, whenever we perform an unsafe operation, it is idiomatic to write a comment starting with `SAFETY` to explain how the safety rules are upheld. -Additionally, the compiler will not allow you to create references to a mutable -static variable. You can only access it via a raw pointer, created with one of -the raw borrow operators. That includes in cases where the reference is created -invisibly, as when it is used in the `println!` in this code listing. The -requirement that references to static mutable variables can only be created via -raw pointers helps make the safety requirements for using them more obvious. +Additionally, the compiler will deny by default any attempt to create +references to a mutable static variable through a compiler lint. You must +either explicitly opt-out of that lint’s protections by adding an +`#[allow(static_mut_refs)]` annotation or access the mutable static variable +via a raw pointer created with one of the raw borrow operators. That includes +cases where the reference is created invisibly, as when it is used in the +`println!` in this code listing. Requiring references to static mutable +variables to be created via raw pointers helps make the safety requirements for +using them more obvious. With mutable data that is globally accessible, it’s difficult to ensure there are no data races, which is why Rust considers mutable static variables to be unsafe. Where possible, it’s preferable to use the concurrency techniques and thread-safe smart pointers we discussed in Chapter 16 so the compiler checks -that data accessed from different threads is done safely. +that data access from different threads is done safely. ### Implementing an Unsafe Trait @@ -598,8 +603,6 @@ unsafe trait Foo { unsafe impl Foo for i32 { // method implementations go here } - -fn main() {} ``` Listing 20-12: Defining and implementing an unsafe trait @@ -607,88 +610,85 @@ Listing 20-12: Defining and implementing an unsafe trait By using `unsafe impl`, we’re promising that we’ll uphold the invariants that the compiler can’t verify. -As an example, recall the `Sync` and `Send` marker traits we discussed in -“Extensible Concurrency with the `Sync` and `Send` -Traits” in -Chapter 16: the compiler implements these traits automatically if our types are -composed entirely of `Send` and `Sync` types. If we implement a type that -contains a type that is not `Send` or `Sync`, such as raw pointers, and we want -to mark that type as `Send` or `Sync`, we must use `unsafe`. Rust can’t verify -that our type upholds the guarantees that it can be safely sent across threads -or accessed from multiple threads; therefore, we need to do those checks -manually and indicate as such with `unsafe`. +As an example, recall the `Send` and `Sync` marker traits we discussed in +“Extensible Concurrency with the `Send` and `Sync` +Traits” +in Chapter 16: the compiler implements these traits automatically if our types +are composed entirely of other types that implement `Send` and `Sync`. If we +implement a type that contains a type that does not implement `Send` or `Sync`, +such as raw pointers, and we want to mark that type as `Send` or `Sync`, we +must use `unsafe`. Rust can’t verify that our type upholds the guarantees that +it can be safely sent across threads or accessed from multiple threads; +therefore, we need to do those checks manually and indicate as such with +`unsafe`. ### Accessing Fields of a Union -The final action that works only with `unsafe` is accessing fields of a -*union*. A `union` is similar to a `struct`, but only one declared field is -used in a particular instance at one time. Unions are primarily used to -interface with unions in C code. Accessing union fields is unsafe because Rust -can’t guarantee the type of the data currently being stored in the union -instance. You can learn more about unions in the Rust Reference at *../reference/items/unions.html*. +The final action that works only with `unsafe` is accessing fields of a union. +A *union* is similar to a `struct`, but only one declared field is used in a +particular instance at one time. Unions are primarily used to interface with +unions in C code. Accessing union fields is unsafe because Rust can’t guarantee +the type of the data currently being stored in the union instance. You can +learn more about unions in the Rust Reference at *../reference/items/unions.html*. -### Using Miri to check unsafe code +### Using Miri to Check Unsafe Code When writing unsafe code, you might want to check that what you have written -actually is safe and correct. One of the best ways to do that is to use -Miri at *https://github.com/rust-lang/miri*, an official Rust tool for detecting undefined behavior. Whereas -the borrow checker is a *static* tool which works at compile time, Miri is a -*dynamic* tool which works at runtime. It checks your code by running your -program, or its test suite, and detecting when you violate the rules it -understands about how Rust should work. +actually is safe and correct. One of the best ways to do that is to use Miri, +an official Rust tool for detecting undefined behavior. Whereas the borrow +checker is a *static* tool which works at compile time, Miri is a *dynamic* +tool which works at runtime. It checks your code by running your program, or +its test suite, and detecting when you violate the rules it understands about +how Rust should work. Using Miri requires a nightly build of Rust (which we talk about more in -Appendix G: How Rust is Made and “Nightly Rust” at *appendix-07-nightly-rust.html*). You can install -both a nightly version of Rust and the Miri tool by typing `rustup +nightly component add miri`. This does not change what version of Rust your project -uses; it only adds the tool to your system so you can use it when you want to. -You can run Miri on a project by typing `cargo +nightly miri run` or `cargo +nightly miri test`. +Appendix G: How Rust is Made and “Nightly Rust”). You +can install both a nightly version of Rust and the Miri tool by typing `rustup +nightly component add miri`. This does not change what version of Rust your +project uses; it only adds the tool to your system so you can use it when you +want to. You can run Miri on a project by typing `cargo +nightly miri run` or +`cargo +nightly miri test`. For an example of how helpful this can be, consider what happens when we run it -against Listing 20-11: +against Listing 20-11. ``` $ cargo +nightly miri run Compiling unsafe-example v0.1.0 (file:///projects/unsafe-example) Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.01s - Running `/Users/chris/.rustup/toolchains/nightly-aarch64-apple-darwin/bin/cargo-miri runner target/miri/aarch64-apple-darwin/debug/unsafe-example` -warning: creating a shared reference to mutable static is discouraged - --> src/main.rs:14:33 - | -14 | println!("COUNTER: {}", COUNTER); - | ^^^^^^^ shared reference to mutable static - | - = note: for more information, see - = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives - = note: `#[warn(static_mut_refs)]` on by default - + Running `file:///home/.rustup/toolchains/nightly/bin/cargo-miri runner target/miri/debug/unsafe-example` COUNTER: 3 ``` -It helpfully and correctly notices that we have shared references to mutable -data, and warns about it. In this case, it does not tell us how to fix the -problem, but it means that we know there is a possible issue and can think about -how to make sure it is safe. In other cases, it can actually tell us that some -code is *sure* to be wrong and make recommendations about how to fix it. +Miri correctly warns us that we have shared references to mutable data. Here, +Miri issues only a warning because this is not guaranteed to be undefined +behavior in this case, and it does not tell us how to fix the problem. Thanks +to Miri, we now know there is a risk of undefined behavior, and we can think +about how to make the code safe. In some cases, Miri can also detect outright +errors—code patterns that are *sure* to be wrong—and make recommendations about +how to fix those errors. + +Miri doesn’t catch everything you might get wrong when writing unsafe code. +Miri is a dynamic analysis tool, so it only catches problems with code that +actually gets run. That means you will need to use it in conjunction with good +testing techniques to increase your confidence about the unsafe code you have +written. Miri also does not cover every possible way your code can be unsound. -Miri doesn’t catch *everything* you might get wrong when writing unsafe code. -For one thing, since it is a dynamic check, it only catches problems with code -that actually gets run. That means you will need to use it in conjunction with -good testing techniques to increase your confidence about the unsafe code you -have written. For another thing, it does not cover every possible way your code -can be unsound. If Miri *does* catch a problem, you know there’s a bug, but just -because Miri *doesn’t* catch a bug doesn’t mean there isn’t a problem. Miri can -catch a lot, though. Try running it on the other examples of unsafe code in this -chapter and see what it says! +Put another way: If Miri *does* catch a problem, you know there’s a bug, but +just because Miri *doesn’t* catch a bug doesn’t mean there isn’t a problem. It +can catch a lot, though. Try running it on the other examples of unsafe code in +this chapter and see what it says! + +You can learn more about Miri at its GitHub repository at *https://github.com/rust-lang/miri*. ### When to Use Unsafe Code -Using `unsafe` to take one of the five actions (superpowers) just discussed -isn’t wrong or even frowned upon. But it is trickier to get `unsafe` code -correct because the compiler can’t help uphold memory safety. When you have a -reason to use `unsafe` code, you can do so, and having the explicit `unsafe` -annotation makes it easier to track down the source of problems when they occur. -Whenever you write unsafe code, you can use Miri to help you be more confident -that the code you have written upholds Rust’s rules. +Using `unsafe` to use one of the five superpowers just discussed isn’t wrong or +even frowned upon, but it is trickier to get `unsafe` code correct because the +compiler can’t help uphold memory safety. When you have a reason to use +`unsafe` code, you can do so, and having the explicit `unsafe` annotation makes +it easier to track down the source of problems when they occur. Whenever you +write unsafe code, you can use Miri to help you be more confident that the code +you have written upholds Rust’s rules. For a much deeper exploration of how to work effectively with unsafe Rust, read Rust’s official guide to the subject, the Rustonomicon at *https://doc.rust-lang.org/nomicon/*. @@ -700,7 +700,11 @@ Behavior” in Chapter 10, but we didn’t discuss the more advanced details. Now that you know more about Rust, we can get into the nitty-gritty. -### Specifying Placeholder Types in Trait Definitions with Associated Types + + + + +### Associated Types *Associated types* connect a type placeholder with a trait such that the trait method definitions can use these placeholder types in their signatures. The @@ -777,15 +781,15 @@ indicate which implementation of `Iterator` we want to use. With associated types, we don’t need to annotate types because we can’t implement a trait on a type multiple times. In Listing 20-13 with the -definition that uses associated types, we can only choose what the type of -`Item` will be once, because there can only be one `impl Iterator for Counter`. -We don’t have to specify that we want an iterator of `u32` values everywhere -that we call `next` on `Counter`. +definition that uses associated types, we can choose what the type of `Item` +will be only once because there can be only one `impl Iterator for Counter`. We +don’t have to specify that we want an iterator of `u32` values everywhere we +call `next` on `Counter`. Associated types also become part of the trait’s contract: implementors of the trait must provide a type to stand in for the associated type placeholder. Associated types often have a name that describes how the type will be used, -and documenting the associated type in the API documentation is good practice. +and documenting the associated type in the API documentation is a good practice. ### Default Generic Type Parameters and Operator Overloading @@ -803,7 +807,7 @@ operators. But you can overload the operations and corresponding traits listed in `std::ops` by implementing the traits associated with the operator. For example, in Listing 20-15 we overload the `+` operator to add two `Point` instances together. We do this by implementing the `Add` trait on a `Point` -struct: +struct. src/main.rs @@ -855,7 +859,7 @@ trait Add { This code should look generally familiar: a trait with one method and an associated type. The new part is `Rhs=Self`: this syntax is called *default -type parameters*. The `Rhs` generic type parameter (short for “right hand +type parameters*. The `Rhs` generic type parameter (short for “right-hand side”) defines the type of the `rhs` parameter in the `add` method. If we don’t specify a concrete type for `Rhs` when we implement the `Add` trait, the type of `Rhs` will default to `Self`, which will be the type we’re implementing @@ -869,7 +873,7 @@ default. We have two structs, `Millimeters` and `Meters`, holding values in different units. This thin wrapping of an existing type in another struct is known as the *newtype pattern*, which we describe in more detail in the “Using the Newtype -Pattern to Implement External Traits on External Types” section. We want to add values in millimeters to values in meters and have +Pattern to Implement External Traits” section. We want to add values in millimeters to values in meters and have the implementation of `Add` do the conversion correctly. We can implement `Add` for `Millimeters` with `Meters` as the `Rhs`, as shown in Listing 20-16. @@ -890,7 +894,7 @@ impl Add for Millimeters { } ``` -Listing 20-16: Implementing the `Add` trait on `Millimeters` to add `Millimeters` to `Meters` +Listing 20-16: Implementing the `Add` trait on `Millimeters` to add `Millimeters` and `Meters` To add `Millimeters` and `Meters`, we specify `impl Add` to set the value of the `Rhs` type parameter instead of using the default of `Self`. @@ -912,7 +916,11 @@ type parameter to an existing trait, you can give it a default to allow extension of the functionality of the trait without breaking the existing implementation code. -### Fully Qualified Syntax for Disambiguation: Calling Methods with the Same Name + + + + +### Disambiguating Between Methods with the Same Name Nothing in Rust prevents a trait from having a method with the same name as another trait’s method, nor does Rust prevent you from implementing both traits @@ -957,7 +965,7 @@ impl Human { } ``` -Listing 20-17: Two traits are defined to have a ` method and are implemented on the `Human` type, and a `fly` method is implemented on `Human` directly +Listing 20-17: Two traits are defined to have a `fly` method and are implemented on the `Human` type, and a `fly` method is implemented on `Human` directly. When we call `fly` on an instance of `Human`, the compiler defaults to calling the method that is directly implemented on the type, as shown in Listing 20-18. @@ -1018,11 +1026,11 @@ trait to use based on the type of `self`. However, associated functions that are not methods don’t have a `self` parameter. When there are multiple types or traits that define non-method functions with the same function name, Rust doesn’t always know which type you -mean unless you use *fully qualified syntax*. For example, in Listing 20-20 we -create a trait for an animal shelter that wants to name all baby dogs *Spot*. -We make an `Animal` trait with an associated non-method function `baby_name`. -The `Animal` trait is implemented for the struct `Dog`, on which we also -provide an associated non-method function `baby_name` directly. +mean unless you use fully qualified syntax. For example, in Listing 20-20 we +create a trait for an animal shelter that wants to name all baby dogs Spot. We +make an `Animal` trait with an associated non-method function `baby_name`. The +`Animal` trait is implemented for the struct `Dog`, on which we also provide an +associated non-method function `baby_name` directly. src/main.rs @@ -1152,10 +1160,14 @@ in the program. You only need to use this more verbose syntax in cases where there are multiple implementations that use the same name and Rust needs help to identify which implementation you want to call. -### Using Supertraits to Require One Trait’s Functionality Within Another Trait + -Sometimes, you might write a trait definition that depends on another trait: -for a type to implement the first trait, you want to require that type to also + + +### Using Supertraits + +Sometimes you might write a trait definition that depends on another trait: for +a type to implement the first trait, you want to require that type to also implement the second trait. You would do this so that your trait definition can make use of the associated items of the second trait. The trait your trait definition is relying on is called a *supertrait* of your trait. @@ -1282,23 +1294,28 @@ impl fmt::Display for Point { -Then implementing the `OutlinePrint` trait on `Point` will compile +Then, implementing the `OutlinePrint` trait on `Point` will compile successfully, and we can call `outline_print` on a `Point` instance to display it within an outline of asterisks. -### Using the Newtype Pattern to Implement External Traits on External Types + + + + +### Using the Newtype Pattern to Implement External Traits -In “Implementing a Trait on a Type” in Chapter 10, we mentioned the orphan rule that states we’re only allowed -to implement a trait on a type if either the trait or the type are local to our -crate. It’s possible to get around this restriction using the *newtype pattern*, -which involves creating a new type in a tuple struct. (We covered tuple structs -in “Using Tuple Structs without Named Fields to Create Different -Types” in Chapter 5.) The tuple struct will have -one field and be a thin wrapper around the type we want to implement a trait -for. Then the wrapper type is local to our crate, and we can implement the trait -on the wrapper. *Newtype* is a term that originates from the Haskell programming -language. There is no runtime performance penalty for using this pattern, and -the wrapper type is elided at compile time. +In “Implementing a Trait on a Type” in Chapter 10, we mentioned the orphan rule that states we’re only +allowed to implement a trait on a type if either the trait or the type, or +both, are local to our crate. It’s possible to get around this restriction +using the *newtype pattern*, which involves creating a new type in a tuple +struct. (We covered tuple structs in “Using Tuple Structs Without Named Fields +to Create Different Types” in Chapter 5.) The +tuple struct will have one field and be a thin wrapper around the type for +which we want to implement a trait. Then the wrapper type is local to our +crate, and we can implement the trait on the wrapper. *Newtype* is a term that +originates from the Haskell programming language. There is no runtime +performance penalty for using this pattern, and the wrapper type is elided at +compile time. As an example, let’s say we want to implement `Display` on `Vec`, which the orphan rule prevents us from doing directly because the `Display` trait and the @@ -1327,21 +1344,20 @@ fn main() { Listing 20-24: Creating a `Wrapper` type around `Vec` to implement `Display` -The implementation of `Display` uses `self.0` to access the inner `Vec`, +The implementation of `Display` uses `self.0` to access the inner `Vec` because `Wrapper` is a tuple struct and `Vec` is the item at index 0 in the tuple. Then we can use the functionality of the `Display` trait on `Wrapper`. The downside of using this technique is that `Wrapper` is a new type, so it doesn’t have the methods of the value it’s holding. We would have to implement -all the methods of `Vec` directly on `Wrapper` such that the methods delegate -to `self.0`, which would allow us to treat `Wrapper` exactly like a `Vec`. If -we wanted the new type to have every method the inner type has, implementing the -`Deref` trait (discussed in “Treating Smart Pointers Like Regular References -with the `Deref` Trait” in Chapter 15) on -the `Wrapper` to return the inner type would be a solution. If we don’t want the -`Wrapper` type to have all the methods of the inner type—for example, to -restrict the `Wrapper` type’s behavior—we would have to implement just the -methods we do want manually. +all the methods of `Vec` directly on `Wrapper` such that the methods +delegate to `self.0`, which would allow us to treat `Wrapper` exactly like a +`Vec`. If we wanted the new type to have every method the inner type has, +implementing the `Deref` trait on the `Wrapper` to return the inner type would +be a solution (we discussed implementing the `Deref` trait in “Treating Smart +Pointers Like Regular References with `Deref`” in Chapter 15). If we didn’t want the `Wrapper` type to have all the +methods of the inner type—for example, to restrict the `Wrapper` type’s +behavior—we would have to implement just the methods we do want manually. This newtype pattern is also useful even when traits are not involved. Let’s switch focus and look at some advanced ways to interact with Rust’s type system. @@ -1357,13 +1373,14 @@ the `!` type and dynamically sized types. ### Using the Newtype Pattern for Type Safety and Abstraction This section assumes you’ve read the earlier section “Using the Newtype Pattern -to Implement External Traits on External Types.” The newtype pattern is also useful for tasks beyond those we’ve +to Implement External Traits”. The newtype pattern is also useful for tasks beyond those we’ve discussed so far, including statically enforcing that values are never confused and indicating the units of a value. You saw an example of using newtypes to indicate units in Listing 20-16: recall that the `Millimeters` and `Meters` structs wrapped `u32` values in a newtype. If we wrote a function with a -parameter of type `Millimeters`, we couldn’t compile a program that accidentally -tried to call that function with a value of type `Meters` or a plain `u32`. +parameter of type `Millimeters`, we wouldn’t be able to compile a program that +accidentally tried to call that function with a value of type `Meters` or a +plain `u32`. We can also use the newtype pattern to abstract away some implementation details of a type: the new type can expose a public API that is different from @@ -1388,7 +1405,7 @@ the alias `Kilometers` to `i32` like so: type Kilometers = i32; ``` -Now, the alias `Kilometers` is a *synonym* for `i32`; unlike the `Millimeters` +Now the alias `Kilometers` is a *synonym* for `i32`; unlike the `Millimeters` and `Meters` types we created in Listing 20-16, `Kilometers` is not a separate, new type. Values that have the type `Kilometers` will be treated the same as values of type `i32`: @@ -1404,7 +1421,7 @@ values of type `i32`: Because `Kilometers` and `i32` are the same type, we can add values of both types and we can pass `Kilometers` values to functions that take `i32` -parameters. However, using this method, we don’t get the type checking benefits +parameters. However, using this method, we don’t get the type-checking benefits that we get from the newtype pattern discussed earlier. In other words, if we mix up `Kilometers` and `i32` values somewhere, the compiler will not give us an error. @@ -1509,7 +1526,7 @@ us a consistent interface across all of `std::io`. Because it’s an alias, it just another `Result`, which means we can use any methods that work on `Result` with it, as well as special syntax like the `?` operator. -### The Never Type that Never Returns +### The Never Type That Never Returns Rust has a special type named `!` that’s known in type theory lingo as the *empty type* because it has no values. We prefer to call it the *never type* @@ -1523,11 +1540,11 @@ fn bar() -> ! { ``` This code is read as “the function `bar` returns never.” Functions that return -never are called *diverging functions*. We can’t create values of the type `!` +never are called *diverging functions*. We can’t create values of the type `!`, so `bar` can never possibly return. But what use is a type you can never create values for? Recall the code from -Listing 2-5, part of the number guessing game; we’ve reproduced a bit of it +Listing 2-5, part of the number-guessing game; we’ve reproduced a bit of it here in Listing 20-27. @@ -1540,10 +1557,10 @@ here in Listing 20-27. Listing 20-27: A `match` with an arm that ends in `continue` -At the time, we skipped over some details in this code. In “The `match` Control -Flow Operator” in Chapter 6, we -discussed that `match` arms must all return the same type. So, for example, the -following code doesn’t work: +At the time, we skipped over some details in this code. In “The `match` +Control Flow Construct” in +Chapter 6, we discussed that `match` arms must all return the same type. So, +for example, the following code doesn’t work: ``` let guess = match guess.trim().parse() { @@ -1613,9 +1630,10 @@ code using values whose size we can know only at runtime. Let’s dig into the details of a dynamically sized type called `str`, which we’ve been using throughout the book. That’s right, not `&str`, but `str` on -its own, is a DST. We can’t know how long the string is until runtime, meaning -we can’t create a variable of type `str`, nor can we take an argument of type -`str`. Consider the following code, which does not work: +its own, is a DST. In many cases, such as when storing text entered by a user, +we can’t know how long the string is until runtime. That means we can’t create +a variable of type `str`, nor can we take an argument of type `str`. Consider +the following code, which does not work: ``` let s1: str = "Hello there!"; @@ -1632,7 +1650,7 @@ holding a dynamically sized type. So what do we do? In this case, you already know the answer: we make the types of `s1` and `s2` a `&str` rather than a `str`. Recall from “String Slices” in Chapter 4 that the slice data -structure just stores the starting position and the length of the slice. So +structure just stores the starting position and the length of the slice. So, although a `&T` is a single value that stores the memory address of where the `T` is located, a `&str` is *two* values: the address of the `str` and its length. As such, we can know the size of a `&str` value at compile time: it’s @@ -1646,11 +1664,10 @@ a pointer of some kind. We can combine `str` with all kinds of pointers: for example, `Box` or `Rc`. In fact, you’ve seen this before but with a different dynamically sized type: traits. Every trait is a dynamically sized type we can refer to by -using the name of the trait. In “Using Trait Objects That Allow for Values of -Different -Types” in Chapter 18, we mentioned that to use traits as trait objects, we must put -them behind a pointer, such as `&dyn Trait` or `Box` (`Rc` -would work too). +using the name of the trait. In “Using Trait Objects to Abstract over Shared +Behavior” +in Chapter 18, we mentioned that to use traits as trait objects, we must put +them behind a pointer, such as `&dyn Trait` or `Box` (`Rc` would work too). To work with DSTs, Rust provides the `Sized` trait to determine whether or not a type’s size is known at compile time. This trait is automatically implemented @@ -1703,14 +1720,14 @@ including function pointers and returning closures. We’ve talked about how to pass closures to functions; you can also pass regular functions to functions! This technique is useful when you want to pass a function you’ve already defined rather than defining a new closure. Functions -coerce to the type `fn` (with a lowercase f), not to be confused with the `Fn` -closure trait. The `fn` type is called a *function pointer*. Passing functions -with function pointers will allow you to use functions as arguments to other -functions. +coerce to the type `fn` (with a lowercase *f*), not to be confused with the +`Fn` closure trait. The `fn` type is called a *function pointer*. Passing +functions with function pointers will allow you to use functions as arguments +to other functions. The syntax for specifying that a parameter is a function pointer is similar to that of closures, as shown in Listing 20-28, where we’ve defined a function -`add_one` that adds one to its parameter. The function `do_twice` takes two +`add_one` that adds 1 to its parameter. The function `do_twice` takes two parameters: a function pointer to any function that takes an `i32` parameter and returns an `i32`, and one `i32` value. The `do_twice` function calls the function `f` twice, passing it the `arg` value, then adds the two function call @@ -1758,8 +1775,9 @@ functions can accept functions as arguments, but C doesn’t have closures. As an example of where you could use either a closure defined inline or a named function, let’s look at a use of the `map` method provided by the `Iterator` -trait in the standard library. To use the `map` function to turn a vector of -numbers into a vector of strings, we could use a closure, like this: +trait in the standard library. To use the `map` method to turn a vector of +numbers into a vector of strings, we could use a closure, as in Listing 20-29. + ``` let list_of_numbers = vec![1, 2, 3]; @@ -1767,8 +1785,11 @@ numbers into a vector of strings, we could use a closure, like this: list_of_numbers.iter().map(|i| i.to_string()).collect(); ``` -Or we could name a function as the argument to `map` instead of the closure, -like this: +Listing 20-29: Using a closure with the `map` method to convert numbers to strings + +Or we could name a function as the argument to `map` instead of the closure. +Listing 20-30 shows what this would look like. + ``` let list_of_numbers = vec![1, 2, 3]; @@ -1776,17 +1797,22 @@ like this: list_of_numbers.iter().map(ToString::to_string).collect(); ``` +Listing 20-30: Using the `String::to_string` function with the `map` method method to convert numbers to strings + Note that we must use the fully qualified syntax that we talked about in “Advanced Traits” because there are multiple -functions available named `to_string`. Here, we’re using the `to_string` -function defined in the `ToString` trait, which the standard library has -implemented for any type that implements `Display`. +functions available named `to_string`. + +Here, we’re using the `to_string` function defined in the `ToString` trait, +which the standard library has implemented for any type that implements +`Display`. -Recall from “Enum values” in Chapter 6 that the +Recall from “Enum Values” in Chapter 6 that the name of each enum variant that we define also becomes an initializer function. We can use these initializer functions as function pointers that implement the closure traits, which means we can specify the initializer functions as -arguments for methods that take closures, like so: +arguments for methods that take closures, as seen in Listing 20-31. + ``` enum Status { @@ -1797,9 +1823,11 @@ arguments for methods that take closures, like so: let list_of_statuses: Vec = (0u32..20).map(Status::Value).collect(); ``` -Here we create `Status::Value` instances using each `u32` value in the range +Listing 20-31: Using an enum initializer with the `map` method to create a `Status` instance from numbers + +Here, we create `Status::Value` instances using each `u32` value in the range that `map` is called on by using the initializer function of `Status::Value`. -Some people prefer this style, and some people prefer to use closures. They +Some people prefer this style and some people prefer to use closures. They compile to the same code, so use whichever style is clearer to you. ### Returning Closures @@ -1807,13 +1835,15 @@ compile to the same code, so use whichever style is clearer to you. Closures are represented by traits, which means you can’t return closures directly. In most cases where you might want to return a trait, you can instead use the concrete type that implements the trait as the return value of the -function. However, you can’t do that with closures because they don’t have a -concrete type that is returnable; you’re not allowed to use the function -pointer `fn` as a return type, for example. +function. However, you can’t usually do that with closures because they don’t +have a concrete type that is returnable; you’re not allowed to use the function +pointer `fn` as a return type if the closure captures any values from its +scope, for example. Instead, you will normally use the `impl Trait` syntax we learned about in Chapter 10. You can return any function type, using `Fn`, `FnOnce` and `FnMut`. -For example, this code will work just fine: +For example, the code in Listing 20-32 will compile just fine. + ``` fn returns_closure() -> impl Fn(i32) -> i32 { @@ -1821,11 +1851,16 @@ fn returns_closure() -> impl Fn(i32) -> i32 { } ``` -However, as we noted in the “Closure Type Inference and -Annotation” section in Chapter 13, each closure -is also its own distinct type. If you need to work with multiple functions that -have the same signature but different implementations, you will need to use a -trait object for them: +Listing 20-32: Returning a closure from a function using the `impl Trait` syntax + +However, as we noted in “Closure Type Inference and +Annotation” in Chapter 13, each closure is also +its own distinct type. If you need to work with multiple functions that have the +same signature but different implementations, you will need to use a trait +object for them. Consider what happens if you write code like that shown in +Listing 20-33. + +src/main.rs ``` fn main() { @@ -1836,6 +1871,58 @@ fn main() { } } +fn returns_closure() -> impl Fn(i32) -> i32 { + |x| x + 1 +} + +fn returns_initialized_closure(init: i32) -> impl Fn(i32) -> i32 { + move |x| x + init +} +``` + +Listing 20-33: Creating a `Vec` of closures defined by functions that return `impl Fn` types + +Here we have two functions, `returns_closure` and `returns_initialized_closure`, +which both return `impl Fn(i32) -> i32`. Notice that the closures that they +return are different, even though they implement the same type. If we try to +compile this, Rust lets us know that it won’t work: + +``` +$ cargo build + Compiling functions-example v0.1.0 (file:///projects/functions-example) +error[E0308]: mismatched types + --> src/main.rs:2:44 + | +2 | let handlers = vec![returns_closure(), returns_initialized_closure(123)]; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected opaque type, found a different opaque type +... +9 | fn returns_closure() -> impl Fn(i32) -> i32 { + | ------------------- the expected opaque type +... +13 | fn returns_initialized_closure(init: i32) -> impl Fn(i32) -> i32 { + | ------------------- the found opaque type + | + = note: expected opaque type `impl Fn(i32) -> i32` (opaque type at ) + found opaque type `impl Fn(i32) -> i32` (opaque type at ) + = note: distinct uses of `impl Trait` result in different opaque types + +For more information about this error, try `rustc --explain E0308`. +error: could not compile `functions-example` (bin "functions-example") due to 1 previous error +``` + +The error message tells us that whenever we return an `impl Trait`, Rust +creates a unique *opaque type*, a type where we cannot see into the details of +what Rust constructs for us, nor can we guess the type Rust will generate to +write ourselves. So even though these functions return closures that implement +the same trait, `Fn(i32) -> i32`, the opaque types Rust generates for each are +distinct. (This is similar to how Rust produces different concrete types for +distinct async blocks even when they have the same output type, as we saw in +“Working with Any Number of Futures” in +Chapter 17.) We have seen a solution to this problem a few times now: we can +use a trait object, as in Listing 20-34. + + +``` fn returns_closure() -> Box i32> { Box::new(|x| x + 1) } @@ -1845,9 +1932,10 @@ fn returns_initialized_closure(init: i32) -> Box i32> { } ``` -This code will compile just fine—but it wouldn’t if we had tried to stick with -`impl Fn(i32) -> i32`. For more about trait objects, refer to the section -“Using Trait Objects That Allow for Values of Different +Listing 20-34: Creating a `Vec` of closures defined by functions that return `Box` so they have the same type + +This code will compile just fine. For more about trait objects, refer to the +section “Using Trait Objects That Allow for Values of Different Types” in Chapter 18. Next, let’s look at macros! @@ -1878,7 +1966,7 @@ macros *expand* to produce more code than the code you’ve written manually. Metaprogramming is useful for reducing the amount of code you have to write and maintain, which is also one of the roles of functions. However, macros have -some additional powers that functions don’t. +some additional powers that functions don’t have. A function signature must declare the number and type of parameters the function has. Macros, on the other hand, can take a variable number of @@ -1905,7 +1993,7 @@ are also sometimes referred to as “macros by example,” “`macro_rules!` mac or just plain “macros.” At their core, declarative macros allow you to write something similar to a Rust `match` expression. As discussed in Chapter 6, `match` expressions are control structures that take an expression, compare the -resulting value of the expression to patterns, and then run the code associated +resultant value of the expression to patterns, and then run the code associated with the matching pattern. Macros also compare a value to patterns that are associated with particular code: in this situation, the value is the literal Rust source code passed to the macro; the patterns are compared with the @@ -1927,7 +2015,7 @@ We could also use the `vec!` macro to make a vector of two integers or a vector of five string slices. We wouldn’t be able to use a function to do the same because we wouldn’t know the number or type of values up front. -Listing 20-29 shows a slightly simplified definition of the `vec!` macro. +Listing 20-35 shows a slightly simplified definition of the `vec!` macro. src/lib.rs @@ -1946,11 +2034,11 @@ macro_rules! vec { } ``` -Listing 20-29: A simplified version of the `vec!` macro definition +Listing 20-35: A simplified version of the `vec!` macro definition > Note: The actual definition of the `vec!` macro in the standard library -> includes code to preallocate the correct amount of memory up front. That code -> is an optimization that we don’t include here to make the example simpler. +> includes code to pre-allocate the correct amount of memory up front. That code +> is an optimization that we don’t include here, to make the example simpler. The `#[macro_export]` annotation indicates that this macro should be made available whenever the crate in which the macro is defined is brought into @@ -1968,13 +2056,13 @@ is the only pattern in this macro, there is only one valid way to match; any other pattern will result in an error. More complex macros will have more than one arm. -Valid pattern syntax in macro definitions is different than the pattern syntax +Valid pattern syntax in macro definitions is different from the pattern syntax covered in Chapter 19 because macro patterns are matched against Rust code structure rather than values. Let’s walk through what the pattern pieces in Listing 20-29 mean; for the full macro pattern syntax, see the Rust Reference at *../reference/macros-by-example.html*. -First, we use a set of parentheses to encompass the whole pattern. We use a +First we use a set of parentheses to encompass the whole pattern. We use a dollar sign (`$`) to declare a variable in the macro system that will contain the Rust code matching the pattern. The dollar sign makes it clear this is a macro variable as opposed to a regular Rust variable. Next comes a set of @@ -1983,9 +2071,9 @@ for use in the replacement code. Within `$()` is `$x:expr`, which matches any Rust expression and gives the expression the name `$x`. The comma following `$()` indicates that a literal comma separator character -must appear between each instance of the code that matches the code within -`$()`. The `*` specifies that the pattern matches zero or more of whatever -precedes the `*`. +must appear between each instance of the code that matches the code in `$()`. +The `*` specifies that the pattern matches zero or more of whatever precedes +the `*`. When we call this macro with `vec![1, 2, 3];`, the `$x` pattern matches three times with the three expressions `1`, `2`, and `3`. @@ -2016,16 +2104,16 @@ Daniel Keep and continued by Lukas Wirth. ### Procedural Macros for Generating Code from Attributes -The second form of macros is the *procedural macro*, which acts more like a -function (and is a type of procedure). Procedural macros accept some code as an -input, operate on that code, and produce some code as an output rather than +The second form of macros is the procedural macro, which acts more like a +function (and is a type of procedure). *Procedural macros* accept some code as +an input, operate on that code, and produce some code as an output rather than matching against patterns and replacing the code with other code as declarative -macros do. The three kinds of procedural macros are custom derive, +macros do. The three kinds of procedural macros are custom `derive`, attribute-like, and function-like, and all work in a similar fashion. When creating procedural macros, the definitions must reside in their own crate with a special crate type. This is for complex technical reasons that we hope -to eliminate in the future. In Listing 20-30, we show how to define a +to eliminate in the future. In Listing 20-36, we show how to define a procedural macro, where `some_attribute` is a placeholder for using a specific macro variety. @@ -2039,7 +2127,7 @@ pub fn some_name(input: TokenStream) -> TokenStream { } ``` -Listing 20-30: An example of defining a procedural macro +Listing 20-36: An example of defining a procedural macro The function that defines a procedural macro takes a `TokenStream` as an input and produces a `TokenStream` as an output. The `TokenStream` type is defined by @@ -2051,7 +2139,7 @@ that specifies which kind of procedural macro we’re creating. We can have multiple kinds of procedural macros in the same crate. Let’s look at the different kinds of procedural macros. We’ll start with a -custom derive macro and then explain the small dissimilarities that make the +custom `derive` macro and then explain the small dissimilarities that make the other forms different. ### How to Write a Custom derive Macro @@ -2063,7 +2151,7 @@ we’ll provide a procedural macro so users can annotate their type with `#[derive(HelloMacro)]` to get a default implementation of the `hello_macro` function. The default implementation will print `Hello, Macro! My name is TypeName!` where `TypeName` is the name of the type on which this trait has been defined. In other words, we’ll write a crate that enables another -programmer to write code like Listing 20-31 using our crate. +programmer to write code like Listing 20-37 using our crate. src/main.rs @@ -2079,7 +2167,7 @@ fn main() { } ``` -Listing 20-31: The code a user of our crate will be able to write when using our procedural macro +Listing 20-37: The code a user of our crate will be able to write when using our procedural macro This code will print `Hello, Macro! My name is Pancakes!` when we’re done. The first step is to make a new library crate, like this: @@ -2088,7 +2176,8 @@ first step is to make a new library crate, like this: $ cargo new hello_macro --lib ``` -Next, we’ll define the `HelloMacro` trait and its associated function: +Next, in Listing 20-38, we’ll define the `HelloMacro` trait and its associated +function. src/lib.rs @@ -2098,10 +2187,12 @@ pub trait HelloMacro { } ``` - +Listing 20-38: A simple trait that we will use with the `derive` macro We have a trait and its function. At this point, our crate user could implement -the trait to achieve the desired functionality, like so: +the trait to achieve the desired functionality, as in Listing 20-39. + +src/main.rs ``` use hello_macro::HelloMacro; @@ -2119,6 +2210,8 @@ fn main() { } ``` +Listing 20-39: How it would look if users wrote a manual implementation of the `HelloMacro` trait + However, they would need to write the implementation block for each type they wanted to use with `hello_macro`; we want to spare them from having to do this work. @@ -2131,7 +2224,7 @@ name at runtime. We need a macro to generate code at compile time. The next step is to define the procedural macro. At the time of this writing, procedural macros need to be in their own crate. Eventually, this restriction might be lifted. The convention for structuring crates and macro crates is as -follows: for a crate named `foo`, a custom derive procedural macro crate is +follows: for a crate named `foo`, a custom `derive` procedural macro crate is called `foo_derive`. Let’s start a new crate called `hello_macro_derive` inside our `hello_macro` project: @@ -2168,7 +2261,7 @@ quote = "1.0" -To start defining the procedural macro, place the code in Listing 20-32 into +To start defining the procedural macro, place the code in Listing 20-40 into your *src/lib.rs* file for the `hello_macro_derive` crate. Note that this code won’t compile until we add a definition for the `impl_hello_macro` function. @@ -2189,7 +2282,7 @@ pub fn hello_macro_derive(input: TokenStream) -> TokenStream { } ``` -Listing 20-32: Code that most procedural macro crates will require in order to process Rust code +Listing 20-40: Code that most procedural macro crates will require in order to process Rust code Notice that we’ve split the code into the `hello_macro_derive` function, which is responsible for parsing the `TokenStream`, and the `impl_hello_macro` @@ -2200,10 +2293,11 @@ procedural macro crate you see or create. The code you specify in the body of the inner function (`impl_hello_macro` in this case) will be different depending on your procedural macro’s purpose. -We’ve introduced three new crates: `proc_macro`, [`syn`], and [`quote`]. The -`proc_macro` crate comes with Rust, so we didn’t need to add that to the -dependencies in *Cargo.toml*. The `proc_macro` crate is the compiler’s API that -allows us to read and manipulate Rust code from our code. +We’ve introduced three new crates: `proc_macro`, `syn` at *https://crates.io/crates/syn*, +and `quote`. The `proc_macro` crate comes with Rust, +so we didn’t need to add that to the dependencies in *Cargo.toml*. The +`proc_macro` crate is the compiler’s API that allows us to read and manipulate +Rust code from our code. The `syn` crate parses Rust code from a string into a data structure that we can perform operations on. The `quote` crate turns `syn` data structures back @@ -2221,8 +2315,8 @@ The `hello_macro_derive` function first converts the `input` from a `TokenStream` to a data structure that we can then interpret and perform operations on. This is where `syn` comes into play. The `parse` function in `syn` takes a `TokenStream` and returns a `DeriveInput` struct representing the -parsed Rust code. Listing 20-33 shows the relevant parts of the `DeriveInput` -struct we get from parsing the `struct Pancakes;` string: +parsed Rust code. Listing 20-41 shows the relevant parts of the `DeriveInput` +struct we get from parsing the `struct Pancakes;` string. ``` @@ -2245,16 +2339,16 @@ DeriveInput { } ``` -Listing 20-33: The `DeriveInput` instance we get when parsing the code that has the macro’s attribute in Listing 20-31 +Listing 20-41: The `DeriveInput` instance we get when parsing the code that has the macro’s attribute in Listing 20-37 The fields of this struct show that the Rust code we’ve parsed is a unit struct -with the `ident` (identifier, meaning the name) of `Pancakes`. There are more +with the `ident` (*identifier*, meaning the name) of `Pancakes`. There are more fields on this struct for describing all sorts of Rust code; check the `syn` documentation for `DeriveInput` at *https://docs.rs/syn/2.0/syn/struct.DeriveInput.html* for more information. Soon we’ll define the `impl_hello_macro` function, which is where we’ll build the new Rust code we want to include. But before we do, note that the output -for our derive macro is also a `TokenStream`. The returned `TokenStream` is +for our `derive` macro is also a `TokenStream`. The returned `TokenStream` is added to the code that our crate users write, so when they compile their crate, they’ll get the extra functionality that we provide in the modified `TokenStream`. @@ -2269,33 +2363,33 @@ about what went wrong by using `panic!` or `expect`. Now that we have the code to turn the annotated Rust code from a `TokenStream` into a `DeriveInput` instance, let’s generate the code that implements the -`HelloMacro` trait on the annotated type, as shown in Listing 20-34. +`HelloMacro` trait on the annotated type, as shown in Listing 20-42. hello_macro_derive/src/lib.rs ``` fn impl_hello_macro(ast: &syn::DeriveInput) -> TokenStream { let name = &ast.ident; - let gen = quote! { + let generated = quote! { impl HelloMacro for #name { fn hello_macro() { println!("Hello, Macro! My name is {}!", stringify!(#name)); } } }; - gen.into() + generated.into() } ``` -Listing 20-34: Implementing the `HelloMacro` trait using the parsed Rust code +Listing 20-42: Implementing the `HelloMacro` trait using the parsed Rust code We get an `Ident` struct instance containing the name (identifier) of the -annotated type using `ast.ident`. The struct in Listing 20-33 shows that when -we run the `impl_hello_macro` function on the code in Listing 20-31, the -`ident` we get will have the `ident` field with a value of `"Pancakes"`. Thus, -the `name` variable in Listing 20-34 will contain an `Ident` struct instance +annotated type using `ast.ident`. The struct in Listing 20-41 shows that when +we run the `impl_hello_macro` function on the code in Listing 20-37, the +`ident` we get will have the `ident` field with a value of `"Pancakes"`. Thus +the `name` variable in Listing 20-42 will contain an `Ident` struct instance that, when printed, will be the string `"Pancakes"`, the name of the struct in -Listing 20-31. +Listing 20-37. The `quote!` macro lets us define the Rust code that we want to return. The compiler expects something different to the direct result of the `quote!` @@ -2316,7 +2410,7 @@ the name of the annotated type. The `stringify!` macro used here is built into Rust. It takes a Rust expression, such as `1 + 2`, and at compile time turns the expression into a -string literal, such as `"1 + 2"`. This is different than `format!` or +string literal, such as `"1 + 2"`. This is different from `format!` or `println!`, macros which evaluate the expression and then turn the result into a `String`. There is a possibility that the `#name` input might be an expression to print literally, so we use `stringify!`. Using `stringify!` also @@ -2324,34 +2418,36 @@ saves an allocation by converting `#name` to a string literal at compile time. At this point, `cargo build` should complete successfully in both `hello_macro` and `hello_macro_derive`. Let’s hook up these crates to the code in Listing -20-31 to see the procedural macro in action! Create a new binary project in +20-37 to see the procedural macro in action! Create a new binary project in your *projects* directory using `cargo new pancakes`. We need to add `hello_macro` and `hello_macro_derive` as dependencies in the `pancakes` crate’s *Cargo.toml*. If you’re publishing your versions of `hello_macro` and -`hello_macro_derive` to crates.io at *https://crates.io/*, they would be regular -dependencies; if not, you can specify them as `path` dependencies as follows: +`hello_macro_derive` to crates.io, they +would be regular dependencies; if not, you can specify them as `path` +dependencies as follows: ``` +[dependencies] hello_macro = { path = "../hello_macro" } hello_macro_derive = { path = "../hello_macro/hello_macro_derive" } ``` -Put the code in Listing 20-31 into *src/main.rs*, and run `cargo run`: it +Put the code in Listing 20-37 into *src/main.rs*, and run `cargo run`: it should print `Hello, Macro! My name is Pancakes!` The implementation of the `HelloMacro` trait from the procedural macro was included without the `pancakes` crate needing to implement it; the `#[derive(HelloMacro)]` added the trait implementation. Next, let’s explore how the other kinds of procedural macros differ from custom -derive macros. +`derive` macros. -### Attribute-Like macros +### Attribute-Like Macros -Attribute-like macros are similar to custom derive macros, but instead of +Attribute-like macros are similar to custom `derive` macros, but instead of generating code for the `derive` attribute, they allow you to create new attributes. They’re also more flexible: `derive` only works for structs and enums; attributes can be applied to other items as well, such as functions. -Here’s an example of using an attribute-like macro: say you have an attribute +Here’s an example of using an attribute-like macro. Say you have an attribute named `route` that annotates functions when using a web application framework: ``` @@ -2372,18 +2468,18 @@ contents of the attribute: the `GET, "/"` part. The second is the body of the item the attribute is attached to: in this case, `fn index() {}` and the rest of the function’s body. -Other than that, attribute-like macros work the same way as custom derive +Other than that, attribute-like macros work the same way as custom `derive` macros: you create a crate with the `proc-macro` crate type and implement a function that generates the code you want! -### Function-Like macros +### Function-Like Macros Function-like macros define macros that look like function calls. Similarly to `macro_rules!` macros, they’re more flexible than functions; for example, they can take an unknown number of arguments. However, `macro_rules!` macros can only be defined using the match-like syntax we discussed in “Declarative Macros with `macro_rules!` for General Metaprogramming” earlier. -Function-like macros take a `TokenStream` parameter and their definition +Function-like macros take a `TokenStream` parameter, and their definition manipulates that `TokenStream` using Rust code as the other two types of procedural macros do. An example of a function-like macro is an `sql!` macro that might be called like so: @@ -2401,7 +2497,7 @@ syntactically correct, which is much more complex processing than a pub fn sql(input: TokenStream) -> TokenStream { ``` -This definition is similar to the custom derive macro’s signature: we receive +This definition is similar to the custom `derive` macro’s signature: we receive the tokens that are inside the parentheses and return the code we wanted to generate. @@ -2410,7 +2506,7 @@ generate. Whew! Now you have some Rust features in your toolbox that you likely won’t use often, but you’ll know they’re available in very particular circumstances. We’ve introduced several complex topics so that when you encounter them in -error message suggestions or in other peoples’ code, you’ll be able to +error message suggestions or in other people’s code, you’ll be able to recognize these concepts and syntax. Use this chapter as a reference to guide you to solutions. diff --git a/nostarch/docx/chapter20.docx b/nostarch/docx/chapter20.docx index 954b55b152c543c6c74040d6552f64958cd1ea6e..2a7c734149a6460fe1cefd4a287dd037a45a0cbd 100644 GIT binary patch delta 76836 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

dSQ2CmwPCRYctZ|Q?8pN=<=eyN* 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 diff --git a/src/ch20-00-advanced-features.md b/src/ch20-00-advanced-features.md index 049681b5da..66e558eef7 100644 --- a/src/ch20-00-advanced-features.md +++ b/src/ch20-00-advanced-features.md @@ -1,7 +1,7 @@ # Advanced Features By now, you’ve learned the most commonly used parts of the Rust programming -language. Before we do one more project in Chapter 21, we’ll look at a few +language. Before we do one more project, in Chapter 21, we’ll look at a few aspects of the language you might run into every once in a while, but may not use every day. You can use this chapter as a reference for when you encounter any unknowns. The features covered here are useful in very specific situations. diff --git a/src/ch20-01-unsafe-rust.md b/src/ch20-01-unsafe-rust.md index 99f689ad60..031f667665 100644 --- a/src/ch20-01-unsafe-rust.md +++ b/src/ch20-01-unsafe-rust.md @@ -30,17 +30,17 @@ that holds the unsafe code. You can take five actions in unsafe Rust that you can’t in safe Rust, which we call _unsafe superpowers_. Those superpowers include the ability to: -- Dereference a raw pointer -- Call an unsafe function or method -- Access or modify a mutable static variable -- Implement an unsafe trait -- Access fields of a `union` +1. Dereference a raw pointer +1. Call an unsafe function or method +1. Access or modify a mutable static variable +1. Implement an unsafe trait +1. Access fields of `union`s It’s important to understand that `unsafe` doesn’t turn off the borrow checker or disable any of Rust’s other safety checks: if you use a reference in unsafe code, it will still be checked. The `unsafe` keyword only gives you access to these five features that are then not checked by the compiler for memory -safety. You’ll still get some degree of safety inside of an unsafe block. +safety. You’ll still get some degree of safety inside an unsafe block. In addition, `unsafe` does not mean the code inside the block is necessarily dangerous or that it will definitely have memory safety problems: the intent is @@ -67,7 +67,7 @@ some abstractions that provide a safe interface to unsafe code. ### Dereferencing a Raw Pointer -In [“Dangling References”][dangling-references] in Chapter 4, we +In Chapter 4, in [“Dangling References”][dangling-references], we mentioned that the compiler ensures references are always valid. Unsafe Rust has two new types called _raw pointers_ that are similar to references. As with references, raw pointers can be immutable or mutable and are written as `*const @@ -108,13 +108,14 @@ variable, we know these particular raw pointers are valid, but we can’t make that assumption about just any raw pointer. To demonstrate this, next we’ll create a raw pointer whose validity we can’t be -so certain of, using `as` to cast a value instead of using the raw borrow -operators. Listing 20-2 shows how to create a raw pointer to an arbitrary +so certain of, using the keyword `as` to cast a value instead of using the raw +borrow operator. Listing 20-2 shows how to create a raw pointer to an arbitrary location in memory. Trying to use arbitrary memory is undefined: there might be -data at that address or there might not, the compiler might optimize the code so -there is no memory access, or the program might terminate with a segmentation -fault. Usually, there is no good reason to write code like this, especially in -cases where you can use a raw borrow operator instead, but it is possible. +data at that address or there might not, the compiler might optimize the code +so there is no memory access, or the program might terminate with a +segmentation fault. Usually, there is no good reason to write code like this, +especially in cases where you can use a raw borrow operator instead, but it is +possible.

@@ -139,8 +140,8 @@ dereference operator `*` on a raw pointer that requires an `unsafe` block. Creating a pointer does no harm; it’s only when we try to access the value that it points at that we might end up dealing with an invalid value. -Note also that in Listing 20-1 and 20-3, we created `*const i32` and `*mut i32` -raw pointers that both pointed to the same memory location, where `num` is +Note also that in Listings 20-1 and 20-3, we created `*const i32` and `*mut +i32` raw pointers that both pointed to the same memory location, where `num` is stored. If we instead tried to create an immutable and a mutable reference to `num`, the code would not have compiled because Rust’s ownership rules don’t allow a mutable reference at the same time as any immutable references. With @@ -149,12 +150,10 @@ same location and change data through the mutable pointer, potentially creating a data race. Be careful! With all of these dangers, why would you ever use raw pointers? One major use -case is when interfacing with C code, as you’ll see in the next section, -[“Calling an Unsafe Function or -Method.”](#calling-an-unsafe-function-or-method) Another case is -when building up safe abstractions that the borrow checker doesn’t understand. -We’ll introduce unsafe functions and then look at an example of a safe -abstraction that uses unsafe code. +case is when interfacing with C code, as you’ll see in the next section. +Another case is when building up safe abstractions that the borrow checker +doesn’t understand. We’ll introduce unsafe functions and then look at an +example of a safe abstraction that uses unsafe code. ### Calling an Unsafe Function or Method @@ -185,11 +184,11 @@ With the `unsafe` block, we’re asserting to Rust that we’ve read the functio documentation, we understand how to use it properly, and we’ve verified that we’re fulfilling the contract of the function. -To perform unsafe operations in the body of an unsafe function, you still need -to use an `unsafe` block, just as within a regular function, and the compiler -will warn you if you forget. This helps to keep `unsafe` blocks as small as -possible, as unsafe operations may not be needed across the whole function -body. +To perform unsafe operations in the body of an `unsafe` function, you still +need to use an `unsafe` block, just as within a regular function, and the +compiler will warn you if you forget. This helps us keep `unsafe` blocks as +small as possible, as unsafe operations may not be needed across the whole +function body. #### Creating a Safe Abstraction over Unsafe Code @@ -232,7 +231,7 @@ Then we return two mutable slices in a tuple: one from the start of the original slice to the `mid` index and another from `mid` to the end of the slice. -When we try to compile the code in Listing 20-5, we’ll get an error. +When we try to compile the code in Listing 20-5, we’ll get an error: ```console {{#include ../listings/ch20-advanced-features/listing-20-05/output.txt}} @@ -256,7 +255,7 @@ to unsafe functions to make the implementation of `split_at_mut` work. Recall from [“The Slice Type”][the-slice-type] in Chapter 4 that -slices are a pointer to some data and the length of the slice. We use the `len` +a slice is a pointer to some data and the length of the slice. We use the `len` method to get the length of a slice and the `as_mut_ptr` method to access the raw pointer of a slice. In this case, because we have a mutable slice to `i32` values, `as_mut_ptr` returns a raw pointer with the type `*mut i32`, which we’ve @@ -264,11 +263,11 @@ stored in the variable `ptr`. We keep the assertion that the `mid` index is within the slice. Then we get to the unsafe code: the `slice::from_raw_parts_mut` function takes a raw pointer -and a length, and it creates a slice. We use it to create a slice that starts -from `ptr` and is `mid` items long. Then we call the `add` method on `ptr` with -`mid` as an argument to get a raw pointer that starts at `mid`, and we create a -slice using that pointer and the remaining number of items after `mid` as the -length. +and a length, and it creates a slice. We use this function to create a slice +that starts from `ptr` and is `mid` items long. Then we call the `add` +method on `ptr` with `mid` as an argument to get a raw pointer that starts at +`mid`, and we create a slice using that pointer and the remaining number of +items after `mid` as the length. The function `slice::from_raw_parts_mut` is unsafe because it takes a raw pointer and must trust that this pointer is valid. The `add` method on raw @@ -304,9 +303,9 @@ that the slice this code creates contains valid `i32` values. Attempting to use #### Using `extern` Functions to Call External Code -Sometimes, your Rust code might need to interact with code written in another +Sometimes your Rust code might need to interact with code written in another language. For this, Rust has the keyword `extern` that facilitates the creation -and use of a _Foreign Function Interface (FFI)_. An FFI is a way for a +and use of a _Foreign Function Interface (FFI)_, which is a way for a programming language to define functions and enable a different (foreign) programming language to call those functions. @@ -314,8 +313,8 @@ Listing 20-8 demonstrates how to set up an integration with the `abs` function from the C standard library. Functions declared within `extern` blocks are generally unsafe to call from Rust code, so `extern` blocks must also be marked `unsafe`. The reason is that other languages don’t enforce Rust’s rules and -guarantees, and Rust can’t check them, so responsibility falls on the programmer -to ensure safety. +guarantees, and Rust can’t check them, so responsibility falls on the +programmer to ensure safety. @@ -326,13 +325,13 @@ to ensure safety. Within the `unsafe extern "C"` block, we list the names and signatures of -external functions from another language we want to call. The `"C"` part defines -which _application binary interface (ABI)_ the external function uses: the ABI -defines how to call the function at the assembly level. The `"C"` ABI is the -most common and follows the C programming language’s ABI. Information about all -the ABIs Rust supports is available in [the Rust Reference][ABI]. +external functions from another language we want to call. The `"C"` part +defines which _application binary interface (ABI)_ the external function uses: +the ABI defines how to call the function at the assembly level. The `"C"` ABI +is the most common and follows the C programming language’s ABI. Information +about all the ABIs Rust supports is available in [the Rust Reference][ABI]. -Every item declared within an `unsafe extern` block is implicitly `unsafe`. +Every item declared within an `unsafe extern` block is implicitly unsafe. However, some FFI functions *are* safe to call. For example, the `abs` function from C’s standard library does not have any memory safety considerations and we know it can be called with any `i32`. In cases like this, we can use the `safe` @@ -349,37 +348,37 @@ requires an `unsafe` block, as shown in Listing 20-9. Marking a function as `safe` does not inherently make it safe! Instead, it is -like a promise you are making to Rust that it _is_ safe. It is still your +like a promise you are making to Rust that it is safe. It is still your responsibility to make sure that promise is kept! -> #### Calling Rust Functions from Other Languages -> -> We can also use `extern` to create an interface that allows other languages to -> call Rust functions. Instead of creating a whole `extern` block, we add the -> `extern` keyword and specify the ABI to use just before the `fn` keyword for -> the relevant function. We also need to add an `#[unsafe(no_mangle)]` -> annotation to tell the Rust compiler not to mangle the name of this function. -> _Mangling_ is when a compiler changes the name we’ve given a function to a -> different name that contains more information for other parts of the -> compilation process to consume but is less human readable. Every programming -> language compiler mangles names slightly differently, so for a Rust function -> to be nameable by other languages, we must disable the Rust compiler’s name -> mangling. This is unsafe because there might be name collisions across -> libraries without the built-in mangling, so it is our responsibility to make -> sure the name we choose is safe to export without mangling. -> -> In the following example, we make the `call_from_c` function accessible from -> C code, after it’s compiled to a shared library and linked from C: -> -> ```rust -> #[unsafe(no_mangle)] -> pub extern "C" fn call_from_c() { -> println!("Just called a Rust function from C!"); -> } -> ``` -> -> This usage of `extern` requires `unsafe` only in the attribute, not on the -> `extern` block. +#### Calling Rust Functions from Other Languages + +We can also use `extern` to create an interface that allows other languages to +call Rust functions. Instead of creating a whole `extern` block, we add the +`extern` keyword and specify the ABI to use just before the `fn` keyword for +the relevant function. We also need to add an `#[unsafe(no_mangle)]` annotation +to tell the Rust compiler not to mangle the name of this function. _Mangling_ +is when a compiler changes the name we’ve given a function to a different name +that contains more information for other parts of the compilation process to +consume but is less human readable. Every programming language compiler mangles +names slightly differently, so for a Rust function to be nameable by other +languages, we must disable the Rust compiler’s name mangling. This is unsafe +because there might be name collisions across libraries without the built-in +mangling, so it is our responsibility to make sure the name we choose is safe +to export without mangling. + +In the following example, we make the `call_from_c` function accessible from C +code, after it’s compiled to a shared library and linked from C: + +``` +#[unsafe(no_mangle)] +pub extern "C" fn call_from_c() { + println!("Just called a Rust function from C!"); +} +``` + +This usage of `extern` requires `unsafe` only in the attribute, not on the +`extern` block. ### Accessing or Modifying a Mutable Static Variable @@ -415,7 +414,7 @@ variables can be mutable. Accessing and modifying mutable static variables is _unsafe_. Listing 20-11 shows how to declare, access, and modify a mutable static variable named `COUNTER`. -+ ```rust {{#rustdoc_include ../listings/ch20-advanced-features/listing-20-11/src/main.rs}} @@ -424,12 +423,13 @@ static variable named `COUNTER`. As with regular variables, we specify mutability using the `mut` keyword. Any -code that reads or writes from `COUNTER` must be within an `unsafe` block. This -code compiles and prints `COUNTER: 3` as we would expect because it’s single -threaded. Having multiple threads access `COUNTER` would likely result in data -races, so it is undefined behavior. Therefore, we need to mark the entire -function as `unsafe`, and document the safety limitation, so anyone calling the -function knows what they are and are not allowed to do safely. +code that reads or writes from `COUNTER` must be within an `unsafe` block. The +code in Listing 20-11 compiles and prints `COUNTER: 3` as we would expect +because it’s single threaded. Having multiple threads access `COUNTER` would +likely result in data races, so it is undefined behavior. Therefore, we need to +mark the entire function as `unsafe` and document the safety limitation, so +anyone calling the function knows what they are and are not allowed to do +safely. Whenever we write an unsafe function, it is idiomatic to write a comment starting with `SAFETY` and explaining what the caller needs to do to call the @@ -437,12 +437,15 @@ function safely. Likewise, whenever we perform an unsafe operation, it is idiomatic to write a comment starting with `SAFETY` to explain how the safety rules are upheld. -Additionally, the compiler will not allow you to create references to a mutable -static variable. You can only access it via a raw pointer, created with one of -the raw borrow operators. That includes in cases where the reference is created -invisibly, as when it is used in the `println!` in this code listing. The -requirement that references to static mutable variables can only be created via -raw pointers helps make the safety requirements for using them more obvious. +Additionally, the compiler will deny by default any attempt to create +references to a mutable static variable through a compiler lint. You must +either explicitly opt-out of that lint’s protections by adding an +`#[allow(static_mut_refs)]` annotation or access the mutable static variable +via a raw pointer created with one of the raw borrow operators. That includes +cases where the reference is created invisibly, as when it is used in the +`println!` in this code listing. Requiring references to static mutable +variables to be created via raw pointers helps make the safety requirements for +using them more obvious. With mutable data that is globally accessible, it’s difficult to ensure there are no data races, which is why Rust considers mutable static variables to be @@ -469,43 +472,44 @@ Listing 20-12. By using `unsafe impl`, we’re promising that we’ll uphold the invariants that the compiler can’t verify. -As an example, recall the `Sync` and `Send` marker traits we discussed in -[“Extensible Concurrency with the `Sync` and `Send` -Traits”][extensible-concurrency-with-the-sync-and-send-traits] in -Chapter 16: the compiler implements these traits automatically if our types are -composed entirely of other types that implement `Send` and `Sync`. If we +As an example, recall the `Send` and `Sync` marker traits we discussed in +[“Extensible Concurrency with the `Send` and `Sync` +Traits”][extensible-concurrency-with-the-send-and-sync-traits] +in Chapter 16: the compiler implements these traits automatically if our types +are composed entirely of other types that implement `Send` and `Sync`. If we implement a type that contains a type that does not implement `Send` or `Sync`, -such as raw pointers, and we want to mark that type as `Send` or `Sync`, we must -use `unsafe`. Rust can’t verify that our type upholds the guarantees that it can -be safely sent across threads or accessed from multiple threads; therefore, we -need to do those checks manually and indicate as such with `unsafe`. +such as raw pointers, and we want to mark that type as `Send` or `Sync`, we +must use `unsafe`. Rust can’t verify that our type upholds the guarantees that +it can be safely sent across threads or accessed from multiple threads; +therefore, we need to do those checks manually and indicate as such with +`unsafe`. ### Accessing Fields of a Union -The final action that works only with `unsafe` is accessing fields of a union. A -`union` is similar to a `struct`, but only one declared field is used in a +The final action that works only with `unsafe` is accessing fields of a union. +A *union* is similar to a `struct`, but only one declared field is used in a particular instance at one time. Unions are primarily used to interface with unions in C code. Accessing union fields is unsafe because Rust can’t guarantee -the type of the data currently being stored in the union instance. You can learn -more about unions in [the Rust Reference][unions]. +the type of the data currently being stored in the union instance. You can +learn more about unions in [the Rust Reference][unions]. ### Using Miri to Check Unsafe Code When writing unsafe code, you might want to check that what you have written -actually is safe and correct. One of the best ways to do that is to use -Miri, an official Rust tool for detecting undefined behavior. Whereas -the borrow checker is a _static_ tool that works at compile time, Miri is a -_dynamic_ tool that works at runtime. It checks your code by running your -program, or its test suite, and detecting when you violate the rules it -understands about how Rust should work. +actually is safe and correct. One of the best ways to do that is to use Miri, +an official Rust tool for detecting undefined behavior. Whereas the borrow +checker is a _static_ tool which works at compile time, Miri is a _dynamic_ +tool which works at runtime. It checks your code by running your program, or +its test suite, and detecting when you violate the rules it understands about +how Rust should work. Using Miri requires a nightly build of Rust (which we talk about more in -[Appendix G: How Rust is Made and “Nightly Rust”][nightly]). You can install -both a nightly version of Rust and the Miri tool by typing `rustup +nightly -component add miri`. This does not change what version of Rust your project -uses; it only adds the tool to your system so you can use it when you want to. -You can run Miri on a project by typing `cargo +nightly miri run` or `cargo -+nightly miri test`. +[Appendix G: How Rust is Made and “Nightly Rust”][nightly]). You +can install both a nightly version of Rust and the Miri tool by typing `rustup ++nightly component add miri`. This does not change what version of Rust your +project uses; it only adds the tool to your system so you can use it when you +want to. You can run Miri on a project by typing `cargo +nightly miri run` or +`cargo +nightly miri test`. For an example of how helpful this can be, consider what happens when we run it against Listing 20-11. @@ -516,17 +520,17 @@ against Listing 20-11. Miri correctly warns us that we have shared references to mutable data. Here, Miri issues only a warning because this is not guaranteed to be undefined -behavior in this case, and it does not tell us how to fix the problem. but at -least we know there is a risk of undefined behavior and can think about how to -make the code safe. In some cases, Miri can also detect outright errors—code -patterns that are _sure_ to be wrong—and make recommendations about how to fix -those errors. - -Miri doesn’t catch everything you might get wrong when writing unsafe code. Miri -is a dynamic analysis tool, so it only catches problems with code that actually -gets run. That means you will need to use it in conjunction with good testing -techniques to increase your confidence about the unsafe code you have written. -Miri also does not cover every possible way your code can be unsound. +behavior in this case, and it does not tell us how to fix the problem. Thanks +to Miri, we now know there is a risk of undefined behavior, and we can think +about how to make the code safe. In some cases, Miri can also detect outright +errors—code patterns that are _sure_ to be wrong—and make recommendations about +how to fix those errors. + +Miri doesn’t catch everything you might get wrong when writing unsafe code. +Miri is a dynamic analysis tool, so it only catches problems with code that +actually gets run. That means you will need to use it in conjunction with good +testing techniques to increase your confidence about the unsafe code you have +written. Miri also does not cover every possible way your code can be unsound. Put another way: If Miri _does_ catch a problem, you know there’s a bug, but just because Miri _doesn’t_ catch a bug doesn’t mean there isn’t a problem. It @@ -537,13 +541,13 @@ You can learn more about Miri at [its GitHub repository][miri]. ### When to Use Unsafe Code -Using `unsafe` to use one of the five superpowers just discussed -isn’t wrong or even frowned upon, but it is trickier to get `unsafe` code -correct because the compiler can’t help uphold memory safety. When you have a -reason to use `unsafe` code, you can do so, and having the explicit `unsafe` -annotation makes it easier to track down the source of problems when they occur. -Whenever you write unsafe code, you can use Miri to help you be more confident -that the code you have written upholds Rust’s rules. +Using `unsafe` to use one of the five superpowers just discussed isn’t wrong or +even frowned upon, but it is trickier to get `unsafe` code correct because the +compiler can’t help uphold memory safety. When you have a reason to use +`unsafe` code, you can do so, and having the explicit `unsafe` annotation makes +it easier to track down the source of problems when they occur. Whenever you +write unsafe code, you can use Miri to help you be more confident that the code +you have written upholds Rust’s rules. For a much deeper exploration of how to work effectively with unsafe Rust, read Rust’s official guide to the subject, the [Rustonomicon][nomicon]. @@ -551,7 +555,7 @@ Rust’s official guide to the subject, the [Rustonomicon][nomicon]. [dangling-references]: ch04-02-references-and-borrowing.html#dangling-references [ABI]: ../reference/items/external-blocks.html#abi [differences-between-variables-and-constants]: ch03-01-variables-and-mutability.html#constants -[extensible-concurrency-with-the-sync-and-send-traits]: ch16-04-extensible-concurrency-sync-and-send.html#extensible-concurrency-with-the-sync-and-send-traits +[extensible-concurrency-with-the-send-and-sync-traits]: ch16-04-extensible-concurrency-sync-and-send.html#extensible-concurrency-with-the-send-and-sync-traits [the-slice-type]: ch04-03-slices.html#the-slice-type [unions]: ../reference/items/unions.html [miri]: https://github.com/rust-lang/miri diff --git a/src/ch20-02-advanced-traits.md b/src/ch20-02-advanced-traits.md index b40171cb24..ec9cc648a2 100644 --- a/src/ch20-02-advanced-traits.md +++ b/src/ch20-02-advanced-traits.md @@ -77,11 +77,11 @@ the concrete types of the generic type parameters each time. When we use the indicate which implementation of `Iterator` we want to use. With associated types, we don’t need to annotate types because we can’t -implement a trait on a type multiple times. In Listing 20-13 with the definition -that uses associated types, we can choose what the type of `Item` will be only -once, because there can be only one `impl Iterator for Counter`. We don’t have -to specify that we want an iterator of `u32` values everywhere that we call -`next` on `Counter`. +implement a trait on a type multiple times. In Listing 20-13 with the +definition that uses associated types, we can choose what the type of `Item` +will be only once because there can be only one `impl Iterator for Counter`. We +don’t have to specify that we want an iterator of `u32` values everywhere we +call `next` on `Counter`. Associated types also become part of the trait’s contract: implementors of the trait must provide a type to stand in for the associated type placeholder. @@ -146,12 +146,12 @@ default. We have two structs, `Millimeters` and `Meters`, holding values in different units. This thin wrapping of an existing type in another struct is known as the _newtype pattern_, which we describe in more detail in the [“Using the Newtype -Pattern to Implement External Traits on External Types”][newtype] section. We want to add values in millimeters to values in meters and have the implementation of `Add` do the conversion correctly. We can implement `Add` for `Millimeters` with `Meters` as the `Rhs`, as shown in Listing 20-16. -+ ```rust,noplayground {{#rustdoc_include ../listings/ch20-advanced-features/listing-20-16/src/lib.rs}} @@ -196,7 +196,7 @@ want to use. Consider the code in Listing 20-17 where we’ve defined two traits both traits on a type `Human` that already has a method named `fly` implemented on it. Each `fly` method does something different. -+ ```rust {{#rustdoc_include ../listings/ch20-advanced-features/listing-20-17/src/main.rs:here}} @@ -248,12 +248,12 @@ trait to use based on the type of `self`. However, associated functions that are not methods don’t have a `self` parameter. When there are multiple types or traits that define non-method -functions with the same function name, Rust doesn't always know which type you -mean unless you use _fully qualified syntax_. For example, in Listing 20-20 we -create a trait for an animal shelter that wants to name all baby dogs _Spot_. -We make an `Animal` trait with an associated non-method function `baby_name`. -The `Animal` trait is implemented for the struct `Dog`, on which we also -provide an associated non-method function `baby_name` directly. +functions with the same function name, Rust doesn’t always know which type you +mean unless you use fully qualified syntax. For example, in Listing 20-20 we +create a trait for an animal shelter that wants to name all baby dogs Spot. We +make an `Animal` trait with an associated non-method function `baby_name`. The +`Animal` trait is implemented for the struct `Dog`, on which we also provide an +associated non-method function `baby_name` directly. @@ -347,7 +347,7 @@ make use of the associated items of the second trait. The trait your trait definition is relying on is called a _supertrait_ of your trait. For example, let’s say we want to make an `OutlinePrint` trait with an -`outline_print` method that will print a given value formatted so that it's +`outline_print` method that will print a given value formatted so that it’s framed in asterisks. That is, given a `Point` struct that implements the standard library trait `Display` to result in `(x, y)`, when we call `outline_print` on a `Point` instance that has `1` for `x` and `3` for `y`, it @@ -416,20 +416,24 @@ Then, implementing the `OutlinePrint` trait on `Point` will compile successfully, and we can call `outline_print` on a `Point` instance to display it within an outline of asterisks. -### Using the Newtype Pattern to Implement External Traits on External Types - -In [“Implementing a Trait on a Type”][implementing-a-trait-on-a-type] in Chapter 10, we mentioned the orphan rule that states we’re only allowed -to implement a trait on a type if either the trait or the type, or both, are -local to our crate. It’s possible to get around this restriction using the -_newtype pattern_, which involves creating a new type in a tuple struct. (We -covered tuple structs in [“Using Tuple Structs Without Named Fields to Create -Different Types”][tuple-structs] in Chapter 5.) The tuple struct -will have one field and be a thin wrapper around the type for which we want to -implement a trait. Then the wrapper type is local to our crate, and we can -implement the trait on the wrapper. _Newtype_ is a term that originates from the -Haskell programming language. There is no runtime performance penalty for using -this pattern, and the wrapper type is elided at compile time. + + + +### Using the Newtype Pattern to Implement External Traits + +In [“Implementing a Trait on a Type”][implementing-a-trait-on-a-type] in Chapter 10, we mentioned the orphan rule that states we’re only +allowed to implement a trait on a type if either the trait or the type, or +both, are local to our crate. It’s possible to get around this restriction +using the _newtype pattern_, which involves creating a new type in a tuple +struct. (We covered tuple structs in [“Using Tuple Structs Without Named Fields +to Create Different Types”][tuple-structs] in Chapter 5.) The +tuple struct will have one field and be a thin wrapper around the type for +which we want to implement a trait. Then the wrapper type is local to our +crate, and we can implement the trait on the wrapper. _Newtype_ is a term that +originates from the Haskell programming language. There is no runtime +performance penalty for using this pattern, and the wrapper type is elided at +compile time. As an example, let’s say we want to implement `Display` on `Vec`, which the orphan rule prevents us from doing directly because the `Display` trait and the @@ -445,26 +449,26 @@ that holds an instance of `Vec`; then we can implement `Display` on -The implementation of `Display` uses `self.0` to access the inner `Vec`, +The implementation of `Display` uses `self.0` to access the inner `Vec` because `Wrapper` is a tuple struct and `Vec` is the item at index 0 in the tuple. Then we can use the functionality of the `Display` trait on `Wrapper`. The downside of using this technique is that `Wrapper` is a new type, so it doesn’t have the methods of the value it’s holding. We would have to implement -all the methods of `Vec` directly on `Wrapper` such that the methods delegate -to `self.0`, which would allow us to treat `Wrapper` exactly like a `Vec`. If -we wanted the new type to have every method the inner type has, implementing the -`Deref` trait on the `Wrapper` to return the inner type would be a solution (we -discussed implementing the `Deref` trait in [“Treating Smart Pointers Like -Regular References with the `Deref` Trait”][smart-pointer-deref] -in Chapter 15). If we didn’t want the `Wrapper` type to have all the methods of -the inner type—for example, to restrict the `Wrapper` type’s behavior—we would -have to implement just the methods we do want manually. +all the methods of `Vec` directly on `Wrapper` such that the methods +delegate to `self.0`, which would allow us to treat `Wrapper` exactly like a +`Vec`. If we wanted the new type to have every method the inner type has, +implementing the `Deref` trait on the `Wrapper` to return the inner type would +be a solution (we discussed implementing the `Deref` trait in [“Treating Smart +Pointers Like Regular References with `Deref`”][smart-pointer-deref] in Chapter 15). If we didn’t want the `Wrapper` type to have all the +methods of the inner type—for example, to restrict the `Wrapper` type’s +behavior—we would have to implement just the methods we do want manually. This newtype pattern is also useful even when traits are not involved. Let’s switch focus and look at some advanced ways to interact with Rust’s type system. -[newtype]: ch20-02-advanced-traits.html#using-the-newtype-pattern-to-implement-external-traits-on-external-types +[newtype]: ch20-02-advanced-traits.html#using-the-newtype-pattern-to-implement-external-traits [implementing-a-trait-on-a-type]: ch10-02-traits.html#implementing-a-trait-on-a-type [traits-defining-shared-behavior]: ch10-02-traits.html#traits-defining-shared-behavior [smart-pointer-deref]: ch15-02-deref.html#treating-smart-pointers-like-regular-references-with-the-deref-trait diff --git a/src/ch20-03-advanced-types.md b/src/ch20-03-advanced-types.md index 8a162f3173..fbf25bb0d6 100644 --- a/src/ch20-03-advanced-types.md +++ b/src/ch20-03-advanced-types.md @@ -9,8 +9,8 @@ the `!` type and dynamically sized types. ### Using the Newtype Pattern for Type Safety and Abstraction This section assumes you’ve read the earlier section [“Using the Newtype Pattern -to Implement External Traits on External Types.”][using-the-newtype-pattern] The newtype pattern is also useful for tasks beyond those we’ve +to Implement External Traits”][using-the-newtype-pattern]. The newtype pattern is also useful for tasks beyond those we’ve discussed so far, including statically enforcing that values are never confused and indicating the units of a value. You saw an example of using newtypes to indicate units in Listing 20-16: recall that the `Millimeters` and `Meters` @@ -29,7 +29,7 @@ associated with their name. Code using `People` would only interact with the public API we provide, such as a method to add a name string to the `People` collection; that code wouldn’t need to know that we assign an `i32` ID to names internally. The newtype pattern is a lightweight way to achieve encapsulation to -hide implementation details, which we discussed in [“Encapsulation That Hides +hide implementation details, which we discussed in [“Encapsulation that Hides Implementation Details”][encapsulation-that-hides-implementation-details] in Chapter 18. @@ -43,7 +43,7 @@ the alias `Kilometers` to `i32` like so: {{#rustdoc_include ../listings/ch20-advanced-features/no-listing-04-kilometers-alias/src/main.rs:here}} ``` -Now, the alias `Kilometers` is a _synonym_ for `i32`; unlike the `Millimeters` +Now the alias `Kilometers` is a _synonym_ for `i32`; unlike the `Millimeters` and `Meters` types we created in Listing 20-16, `Kilometers` is not a separate, new type. Values that have the type `Kilometers` will be treated the same as values of type `i32`: @@ -82,7 +82,7 @@ A type alias makes this code more manageable by reducing the repetition. In Listing 20-26, we’ve introduced an alias named `Thunk` for the verbose type and can replace all uses of the type with the shorter alias `Thunk`. -+ ```rust {{#rustdoc_include ../listings/ch20-advanced-features/listing-20-26/src/main.rs:here}} @@ -140,7 +140,7 @@ return. Here is an example: ``` This code is read as “the function `bar` returns never.” Functions that return -never are called _diverging functions_. We can’t create values of the type `!` +never are called _diverging functions_. We can’t create values of the type `!`, so `bar` can never possibly return. But what use is a type you can never create values for? Recall the code from @@ -155,10 +155,10 @@ here in Listing 20-27. -At the time, we skipped over some details in this code. In [“The `match` Control -Flow Operator”][the-match-control-flow-operator] in Chapter 6, we -discussed that `match` arms must all return the same type. So, for example, the -following code doesn’t work: +At the time, we skipped over some details in this code. In [“The `match` +Control Flow Construct”][the-match-control-flow-construct] in +Chapter 6, we discussed that `match` arms must all return the same type. So, +for example, the following code doesn’t work: ```rust,ignore,does_not_compile {{#rustdoc_include ../listings/ch20-advanced-features/no-listing-08-match-arms-different-types/src/main.rs:here}} @@ -214,9 +214,10 @@ code using values whose size we can know only at runtime. Let’s dig into the details of a dynamically sized type called `str`, which we’ve been using throughout the book. That’s right, not `&str`, but `str` on -its own, is a DST. We can’t know how long the string is until runtime, meaning -we can’t create a variable of type `str`, nor can we take an argument of type -`str`. Consider the following code, which does not work: +its own, is a DST. In many cases, such as when storing text entered by a user, +we can’t know how long the string is until runtime. That means we can’t create +a variable of type `str`, nor can we take an argument of type `str`. Consider +the following code, which does not work: ```rust,ignore,does_not_compile {{#rustdoc_include ../listings/ch20-advanced-features/no-listing-11-cant-create-str/src/main.rs:here}} @@ -232,7 +233,7 @@ holding a dynamically sized type. So what do we do? In this case, you already know the answer: we make the types of `s1` and `s2` a `&str` rather than a `str`. Recall from [“String Slices”][string-slices] in Chapter 4 that the slice data -structure just stores the starting position and the length of the slice. So +structure just stores the starting position and the length of the slice. So, although a `&T` is a single value that stores the memory address of where the `T` is located, a `&str` is _two_ values: the address of the `str` and its length. As such, we can know the size of a `&str` value at compile time: it’s @@ -246,12 +247,11 @@ a pointer of some kind. We can combine `str` with all kinds of pointers: for example, `Box` or `Rc`. In fact, you’ve seen this before but with a different dynamically sized type: traits. Every trait is a dynamically sized type we can refer to by -using the name of the trait. In [“Using Trait Objects That Allow for Values of -Different -Types”][using-trait-objects-that-allow-for-values-of-different-types] in Chapter 18, we mentioned that to use traits as trait objects, we must put -them behind a pointer, such as `&dyn Trait` or `Box` (`Rc` -would work too). +using the name of the trait. In [“Using Trait Objects to Abstract over Shared +Behavior”][using-trait-objects-to-abstract-over-shared-behavior] +in Chapter 18, we mentioned that to use traits as trait objects, we must put +them behind a pointer, such as `&dyn Trait` or `Box` (`Rc` would work too). To work with DSTs, Rust provides the `Sized` trait to determine whether or not a type’s size is known at compile time. This trait is automatically implemented @@ -290,6 +290,6 @@ Next, we’ll talk about functions and closures! [encapsulation-that-hides-implementation-details]: ch18-01-what-is-oo.html#encapsulation-that-hides-implementation-details [string-slices]: ch04-03-slices.html#string-slices -[the-match-control-flow-operator]: ch06-02-match.html#the-match-control-flow-operator -[using-trait-objects-that-allow-for-values-of-different-types]: ch18-02-trait-objects.html#using-trait-objects-that-allow-for-values-of-different-types -[using-the-newtype-pattern]: ch20-02-advanced-traits.html#using-the-newtype-pattern-to-implement-external-traits-on-external-types +[the-match-control-flow-construct]: ch06-02-match.html#the-match-control-flow-construct +[using-trait-objects-to-abstract-over-shared-behavior]: ch18-02-trait-objects.html#using-trait-objects-to-abstract-over-shared-behavior +[using-the-newtype-pattern]: ch20-02-advanced-traits.html#using-the-newtype-pattern-to-implement-external-traits diff --git a/src/ch20-04-advanced-functions-and-closures.md b/src/ch20-04-advanced-functions-and-closures.md index 3f2500daf5..8c625d1f78 100644 --- a/src/ch20-04-advanced-functions-and-closures.md +++ b/src/ch20-04-advanced-functions-and-closures.md @@ -8,10 +8,10 @@ including function pointers and returning closures. We’ve talked about how to pass closures to functions; you can also pass regular functions to functions! This technique is useful when you want to pass a function you’ve already defined rather than defining a new closure. Functions -coerce to the type `fn` (with a lowercase _f_), not to be confused with the `Fn` -closure trait. The `fn` type is called a _function pointer_. Passing functions -with function pointers will allow you to use functions as arguments to other -functions. +coerce to the type `fn` (with a lowercase _f_), not to be confused with the +`Fn` closure trait. The `fn` type is called a _function pointer_. Passing +functions with function pointers will allow you to use functions as arguments +to other functions. The syntax for specifying that a parameter is a function pointer is similar to that of closures, as shown in Listing 20-28, where we’ve defined a function @@ -62,10 +62,10 @@ numbers into a vector of strings, we could use a closure, as in Listing 20-29. -Or we could name a function as the argument to map instead of the closure. +Or we could name a function as the argument to `map` instead of the closure. Listing 20-30 shows what this would look like. -+ ```rust {{#rustdoc_include ../listings/ch20-advanced-features/listing-20-30/src/main.rs:here}} @@ -81,13 +81,13 @@ Here, we’re using the `to_string` function defined in the `ToString` trait, which the standard library has implemented for any type that implements `Display`. -Recall from [“Enum values”][enum-values] in Chapter 6 that the +Recall from [“Enum Values”][enum-values] in Chapter 6 that the name of each enum variant that we define also becomes an initializer function. We can use these initializer functions as function pointers that implement the closure traits, which means we can specify the initializer functions as arguments for methods that take closures, as seen in Listing 20-31. -+ ```rust {{#rustdoc_include ../listings/ch20-advanced-features/listing-20-31/src/main.rs:here}} @@ -95,7 +95,7 @@ arguments for methods that take closures, as seen in Listing 20-31. -Here we create `Status::Value` instances using each `u32` value in the range +Here, we create `Status::Value` instances using each `u32` value in the range that `map` is called on by using the initializer function of `Status::Value`. Some people prefer this style and some people prefer to use closures. They compile to the same code, so use whichever style is clearer to you. @@ -106,13 +106,13 @@ Closures are represented by traits, which means you can’t return closures directly. In most cases where you might want to return a trait, you can instead use the concrete type that implements the trait as the return value of the function. However, you can’t usually do that with closures because they don’t -have a concrete type that is returnable. You’re not allowed to use the function -pointer `fn` as a return type if the closure captures any values from its scope, -for example. +have a concrete type that is returnable; you’re not allowed to use the function +pointer `fn` as a return type if the closure captures any values from its +scope, for example. Instead, you will normally use the `impl Trait` syntax we learned about in Chapter 10. You can return any function type, using `Fn`, `FnOnce` and `FnMut`. -For example, the code in Listing 20-32 will work just fine. +For example, the code in Listing 20-32 will compile just fine. @@ -129,7 +129,7 @@ same signature but different implementations, you will need to use a trait object for them. Consider what happens if you write code like that shown in Listing 20-33. -+ ```rust,ignore,does_not_compile {{#rustdoc_include ../listings/ch20-advanced-features/listing-20-33/src/main.rs}} @@ -138,7 +138,7 @@ Listing 20-33. Here we have two functions, `returns_closure` and `returns_initialized_closure`, -which both return `impl Fn(i32) -> i32`. Notice that he closures that they +which both return `impl Fn(i32) -> i32`. Notice that the closures that they return are different, even though they implement the same type. If we try to compile this, Rust lets us know that it won’t work: @@ -146,15 +146,16 @@ compile this, Rust lets us know that it won’t work: {{#include ../listings/ch20-advanced-features/listing-20-33/output.txt}} ``` -The error message tells us that whenever we return an `impl Trait` Rust creates -a unique _opaque type_, a type where we cannot see into the details of what Rust -constructs for us. So even though these functions both return closures that -implements the same trait, `Fn(i32) -> i32`, the opaque types Rust generates for -each are distinct. (This is similar to how Rust produces different concrete -types for distinct async blocks even when they have the same output type, as we -saw in [“Working with Any Number of Futures”][any-number-of-futures] in Chapter -17. We have seen a solution to this problem a few times now: we can use a trait -object, as in Listing 20-34. +The error message tells us that whenever we return an `impl Trait`, Rust +creates a unique _opaque type_, a type where we cannot see into the details of +what Rust constructs for us, nor can we guess the type Rust will generate to +write ourselves. So even though these functions return closures that implement +the same trait, `Fn(i32) -> i32`, the opaque types Rust generates for each are +distinct. (This is similar to how Rust produces different concrete types for +distinct async blocks even when they have the same output type, as we saw in +[“Working with Any Number of Futures”][any-number-of-futures] in +Chapter 17.) We have seen a solution to this problem a few times now: we can +use a trait object, as in Listing 20-34. @@ -166,7 +167,7 @@ object, as in Listing 20-34. This code will compile just fine. For more about trait objects, refer to the section [“Using Trait Objects That Allow for Values of Different -Types”][using-trait-objects-that-allow-for-values-of-different-types] in Chapter 18. Next, let’s look at macros! @@ -175,4 +176,4 @@ Next, let’s look at macros! [enum-values]: ch06-01-defining-an-enum.html#enum-values [closure-types]: ch13-01-closures.html#closure-type-inference-and-annotation [any-number-of-futures]: ch17-03-more-futures.html -[using-trait-objects-that-allow-for-values-of-different-types]: ch18-02-trait-objects.html#using-trait-objects-that-allow-for-values-of-different-types +[using-trait-objects-to-abstract-over-shared-behavior]: ch18-02-trait-objects.html#using-trait-objects-to-abstract-over-shared-behavior diff --git a/src/ch20-05-macros.md b/src/ch20-05-macros.md index 66e0edd7ef..51404a389c 100644 --- a/src/ch20-05-macros.md +++ b/src/ch20-05-macros.md @@ -118,9 +118,9 @@ for use in the replacement code. Within `$()` is `$x:expr`, which matches any Rust expression and gives the expression the name `$x`. The comma following `$()` indicates that a literal comma separator character -must appear between each instance of the code that matches the code within -`$()`. The `*` specifies that the pattern matches zero or more of whatever -precedes the `*`. +must appear between each instance of the code that matches the code in `$()`. +The `*` specifies that the pattern matches zero or more of whatever precedes +the `*`. When we call this macro with `vec![1, 2, 3];`, the `$x` pattern matches three times with the three expressions `1`, `2`, and `3`. @@ -216,7 +216,8 @@ first step is to make a new library crate, like this: $ cargo new hello_macro --lib ``` -Next, we’ll define the `HelloMacro` trait and its associated function: +Next, in Listing 20-38, we’ll define the `HelloMacro` trait and its associated +function. @@ -302,10 +303,11 @@ procedural macro crate you see or create. The code you specify in the body of the inner function (`impl_hello_macro` in this case) will be different depending on your procedural macro’s purpose. -We’ve introduced three new crates: `proc_macro`, [`syn`], and [`quote`]. The -`proc_macro` crate comes with Rust, so we didn’t need to add that to the -dependencies in _Cargo.toml_. The `proc_macro` crate is the compiler’s API that -allows us to read and manipulate Rust code from our code. +We’ve introduced three new crates: `proc_macro`, [`syn`][syn], +and [`quote`][quote]. The `proc_macro` crate comes with Rust, +so we didn’t need to add that to the dependencies in _Cargo.toml_. The +`proc_macro` crate is the compiler’s API that allows us to read and manipulate +Rust code from our code. The `syn` crate parses Rust code from a string into a data structure that we can perform operations on. The `quote` crate turns `syn` data structures back @@ -383,10 +385,10 @@ into a `DeriveInput` instance, let’s generate the code that implements the We get an `Ident` struct instance containing the name (identifier) of the -annotated type using `ast.ident`. The struct in Listing 20-33 shows that when -we run the `impl_hello_macro` function on the code in Listing 20-31, the -`ident` we get will have the `ident` field with a value of `"Pancakes"`. Thus, -the `name` variable in Listing 20-34 will contain an `Ident` struct instance +annotated type using `ast.ident`. The struct in Listing 20-41 shows that when +we run the `impl_hello_macro` function on the code in Listing 20-37, the +`ident` we get will have the `ident` field with a value of `"Pancakes"`. Thus +the `name` variable in Listing 20-42 will contain an `Ident` struct instance that, when printed, will be the string `"Pancakes"`, the name of the struct in Listing 20-37. @@ -417,15 +419,16 @@ saves an allocation by converting `#name` to a string literal at compile time. At this point, `cargo build` should complete successfully in both `hello_macro` and `hello_macro_derive`. Let’s hook up these crates to the code in Listing -20-31 to see the procedural macro in action! Create a new binary project in +20-37 to see the procedural macro in action! Create a new binary project in your _projects_ directory using `cargo new pancakes`. We need to add `hello_macro` and `hello_macro_derive` as dependencies in the `pancakes` crate’s _Cargo.toml_. If you’re publishing your versions of `hello_macro` and -`hello_macro_derive` to [crates.io](https://crates.io/), they would be regular -dependencies; if not, you can specify them as `path` dependencies as follows: +`hello_macro_derive` to [crates.io](https://crates.io/), they +would be regular dependencies; if not, you can specify them as `path` +dependencies as follows: ```toml -{{#include ../listings/ch20-advanced-features/no-listing-21-pancakes/pancakes/Cargo.toml:7:9}} +{{#include ../listings/ch20-advanced-features/no-listing-21-pancakes/pancakes/Cargo.toml:6:8}} ``` Put the code in Listing 20-37 into _src/main.rs_, and run `cargo run`: it @@ -437,7 +440,7 @@ trait implementation. Next, let’s explore how the other kinds of procedural macros differ from custom `derive` macros. -### Attribute-Like macros +### Attribute-Like Macros Attribute-like macros are similar to custom `derive` macros, but instead of generating code for the `derive` attribute, they allow you to create new @@ -468,14 +471,14 @@ Other than that, attribute-like macros work the same way as custom `derive` macros: you create a crate with the `proc-macro` crate type and implement a function that generates the code you want! -### Function-Like macros +### Function-Like Macros Function-like macros define macros that look like function calls. Similarly to `macro_rules!` macros, they’re more flexible than functions; for example, they can take an unknown number of arguments. However, `macro_rules!` macros can only be defined using the match-like syntax we discussed in [“Declarative Macros with `macro_rules!` for General Metaprogramming”][decl] earlier. -Function-like macros take a `TokenStream` parameter and their definition +Function-like macros take a `TokenStream` parameter, and their definition manipulates that `TokenStream` using Rust code as the other two types of procedural macros do. An example of a function-like macro is an `sql!` macro that might be called like so: @@ -511,8 +514,8 @@ and do one more project! [ref]: ../reference/macros-by-example.html [tlborm]: https://veykril.github.io/tlborm/ -[`syn`]: https://crates.io/crates/syn -[`quote`]: https://crates.io/crates/quote +[syn]: https://crates.io/crates/syn +[quote]: https://crates.io/crates/quote [syn-docs]: https://docs.rs/syn/2.0/syn/struct.DeriveInput.html [quote-docs]: https://docs.rs/quote [decl]: #declarative-macros-with-macro_rules-for-general-metaprogramming From b93788f0c6a46c13491a6b1f541faf4356e9a0f2 Mon Sep 17 00:00:00 2001 From: "Carol (Nichols || Goulding)" Date: Tue, 29 Jul 2025 18:16:49 -0400 Subject: [PATCH 4/8] Switch Miri example to Listing 20-7 rather than 20-11 --- .../listing-20-07/output.txt | 33 ++++++++++++ .../listing-20-11/output.txt | 5 -- nostarch/chapter20.md | 48 ++++++++++++++---- nostarch/docx/chapter20.docx | Bin 100002 -> 107195 bytes src/ch20-01-unsafe-rust.md | 18 +++---- 5 files changed, 80 insertions(+), 24 deletions(-) create mode 100644 listings/ch20-advanced-features/listing-20-07/output.txt delete mode 100644 listings/ch20-advanced-features/listing-20-11/output.txt diff --git a/listings/ch20-advanced-features/listing-20-07/output.txt b/listings/ch20-advanced-features/listing-20-07/output.txt new file mode 100644 index 0000000000..e721ac6034 --- /dev/null +++ b/listings/ch20-advanced-features/listing-20-07/output.txt @@ -0,0 +1,33 @@ +$ cargo +nightly miri run + Compiling unsafe-example v0.1.0 (file:///projects/unsafe-example) + Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.01s + Running `file:///home/.rustup/toolchains/nightly-aarch64-apple-darwin/bin/cargo-miri runner target/miri/aarch64-apple-darwin/debug/unsafe-example` +warning: integer-to-pointer cast + --> src/main.rs:6:13 + | +6 | let r = address as *mut i32; + | ^^^^^^^^^^^^^^^^^^^ integer-to-pointer cast + | + = help: this program is using integer-to-pointer casts or (equivalently) `ptr::with_exposed_provenance`, which means that Miri might miss pointer bugs in this program + = help: see https://doc.rust-lang.org/nightly/std/ptr/fn.with_exposed_provenance.html for more details on that operation + = help: to ensure that Miri does not miss bugs in your program, use Strict Provenance APIs (https://doc.rust-lang.org/nightly/std/ptr/index.html#strict-provenance, https://crates.io/crates/sptr) instead + = help: you can then set `MIRIFLAGS=-Zmiri-strict-provenance` to ensure you are not relying on `with_exposed_provenance` semantics + = help: alternatively, `MIRIFLAGS=-Zmiri-permissive-provenance` disables this warning + = note: BACKTRACE: + = note: inside `main` at src/main.rs:6:13: 6:32 + +error: Undefined Behavior: pointer not dereferenceable: pointer must be dereferenceable for 40000 bytes, but got 0x1234[noalloc] which is a dangling pointer (it has no provenance) + --> src/main.rs:8:35 + | +8 | let values: &[i32] = unsafe { slice::from_raw_parts_mut(r, 10000) }; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here + | + = help: this indicates a bug in the program: it performed an invalid operation, and caused Undefined Behavior + = help: see https://doc.rust-lang.org/nightly/reference/behavior-considered-undefined.html for further information + = note: BACKTRACE: + = note: inside `main` at src/main.rs:8:35: 8:70 + +note: some details are omitted, run with `MIRIFLAGS=-Zmiri-backtrace=full` for a verbose backtrace + +error: aborting due to 1 previous error; 1 warning emitted + diff --git a/listings/ch20-advanced-features/listing-20-11/output.txt b/listings/ch20-advanced-features/listing-20-11/output.txt deleted file mode 100644 index bf64b3806c..0000000000 --- a/listings/ch20-advanced-features/listing-20-11/output.txt +++ /dev/null @@ -1,5 +0,0 @@ -$ cargo +nightly miri run - Compiling unsafe-example v0.1.0 (file:///projects/unsafe-example) - Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.01s - Running `file:///home/.rustup/toolchains/nightly/bin/cargo-miri runner target/miri/debug/unsafe-example` -COUNTER: 3 diff --git a/nostarch/chapter20.md b/nostarch/chapter20.md index 8f134125e9..3e0778bf3b 100644 --- a/nostarch/chapter20.md +++ b/nostarch/chapter20.md @@ -649,23 +649,51 @@ want to. You can run Miri on a project by typing `cargo +nightly miri run` or `cargo +nightly miri test`. For an example of how helpful this can be, consider what happens when we run it -against Listing 20-11. +against Listing 20-7. ``` $ cargo +nightly miri run Compiling unsafe-example v0.1.0 (file:///projects/unsafe-example) Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.01s - Running `file:///home/.rustup/toolchains/nightly/bin/cargo-miri runner target/miri/debug/unsafe-example` -COUNTER: 3 + Running `file:///home/.rustup/toolchains/nightly-aarch64-apple-darwin/bin/cargo-miri runner target/miri/aarch64-apple-darwin/debug/unsafe-example` +warning: integer-to-pointer cast + --> src/main.rs:6:13 + | +6 | let r = address as *mut i32; + | ^^^^^^^^^^^^^^^^^^^ integer-to-pointer cast + | + = help: this program is using integer-to-pointer casts or (equivalently) `ptr::with_exposed_provenance`, which means that Miri might miss pointer bugs in this program + = help: see https://doc.rust-lang.org/nightly/std/ptr/fn.with_exposed_provenance.html for more details on that operation + = help: to ensure that Miri does not miss bugs in your program, use Strict Provenance APIs (https://doc.rust-lang.org/nightly/std/ptr/index.html#strict-provenance, https://crates.io/crates/sptr) instead + = help: you can then set `MIRIFLAGS=-Zmiri-strict-provenance` to ensure you are not relying on `with_exposed_provenance` semantics + = help: alternatively, `MIRIFLAGS=-Zmiri-permissive-provenance` disables this warning + = note: BACKTRACE: + = note: inside `main` at src/main.rs:6:13: 6:32 + +error: Undefined Behavior: pointer not dereferenceable: pointer must be dereferenceable for 40000 bytes, but got 0x1234[noalloc] which is a dangling pointer (it has no provenance) + --> src/main.rs:8:35 + | +8 | let values: &[i32] = unsafe { slice::from_raw_parts_mut(r, 10000) }; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here + | + = help: this indicates a bug in the program: it performed an invalid operation, and caused Undefined Behavior + = help: see https://doc.rust-lang.org/nightly/reference/behavior-considered-undefined.html for further information + = note: BACKTRACE: + = note: inside `main` at src/main.rs:8:35: 8:70 + +note: some details are omitted, run with `MIRIFLAGS=-Zmiri-backtrace=full` for a verbose backtrace + +error: aborting due to 1 previous error; 1 warning emitted + ``` -Miri correctly warns us that we have shared references to mutable data. Here, -Miri issues only a warning because this is not guaranteed to be undefined -behavior in this case, and it does not tell us how to fix the problem. Thanks -to Miri, we now know there is a risk of undefined behavior, and we can think -about how to make the code safe. In some cases, Miri can also detect outright -errors—code patterns that are *sure* to be wrong—and make recommendations about -how to fix those errors. +Miri correctly warns us that we’re casting an integer to a pointer, which might +be a problem but Miri can’t detect if there is because it doesn’t know how the +pointer originated. Then, Miri returns an error where Listing 20-7 has +undefined behavior because we have a dangling pointer. Thanks to Miri, we now +know there is a risk of undefined behavior, and we can think about how to make +the code safe. In some cases, Miri can even make recommendations about how to +fix errors. Miri doesn’t catch everything you might get wrong when writing unsafe code. Miri is a dynamic analysis tool, so it only catches problems with code that diff --git a/nostarch/docx/chapter20.docx b/nostarch/docx/chapter20.docx index 2a7c734149a6460fe1cefd4a287dd037a45a0cbd..c47aa96cc776ecee894a27493186574f9ff7a51e 100644 GIT binary patch delta 85487 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

dSQ2CmwPCRYctZ|Q?8pN=<=eyN* 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 Date: Tue, 29 Jul 2025 18:36:49 -0400 Subject: [PATCH 5/8] Ignore a listing that only has Cargo.toml; it makes rustfmt sad --- .../no-listing-01-workspace/add/rustfmt-ignore | 1 + 1 file changed, 1 insertion(+) create mode 100644 listings/ch14-more-about-cargo/no-listing-01-workspace/add/rustfmt-ignore diff --git a/listings/ch14-more-about-cargo/no-listing-01-workspace/add/rustfmt-ignore b/listings/ch14-more-about-cargo/no-listing-01-workspace/add/rustfmt-ignore new file mode 100644 index 0000000000..cff2dcf3e4 --- /dev/null +++ b/listings/ch14-more-about-cargo/no-listing-01-workspace/add/rustfmt-ignore @@ -0,0 +1 @@ +There's no Rust code in here; just us Cargo.tomls. \ No newline at end of file From 2e3f2e896358f4ae7d78a1d4463d588577019449 Mon Sep 17 00:00:00 2001 From: "Carol (Nichols || Goulding)" Date: Tue, 29 Jul 2025 18:39:24 -0400 Subject: [PATCH 6/8] Fix keyword usage not run by mdbook test but caught by rustfmt --- .../hello_macro/hello_macro_derive/src/lib.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/listings/ch20-advanced-features/no-listing-21-pancakes/hello_macro/hello_macro_derive/src/lib.rs b/listings/ch20-advanced-features/no-listing-21-pancakes/hello_macro/hello_macro_derive/src/lib.rs index 654b6bee56..fd38085464 100644 --- a/listings/ch20-advanced-features/no-listing-21-pancakes/hello_macro/hello_macro_derive/src/lib.rs +++ b/listings/ch20-advanced-features/no-listing-21-pancakes/hello_macro/hello_macro_derive/src/lib.rs @@ -13,12 +13,12 @@ pub fn hello_macro_derive(input: TokenStream) -> TokenStream { fn impl_hello_macro(ast: &syn::DeriveInput) -> TokenStream { let name = &ast.ident; - let gen = quote! { + let generated = quote! { impl HelloMacro for #name { fn hello_macro() { println!("Hello, Macro! My name is {}!", stringify!(#name)); } } }; - gen.into() + generated.into() } From bc46e45ddc67b94b4deec0158993ed204b711133 Mon Sep 17 00:00:00 2001 From: "Carol (Nichols || Goulding)" Date: Tue, 29 Jul 2025 18:40:07 -0400 Subject: [PATCH 7/8] I think I forgot to reformat these after backporting some updates --- listings/ch13-functional-features/listing-13-19/src/main.rs | 1 - .../ch19-patterns-and-matching/listing-19-29/src/main.rs | 6 +++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/listings/ch13-functional-features/listing-13-19/src/main.rs b/listings/ch13-functional-features/listing-13-19/src/main.rs index a6197a4a42..ff907d050b 100644 --- a/listings/ch13-functional-features/listing-13-19/src/main.rs +++ b/listings/ch13-functional-features/listing-13-19/src/main.rs @@ -11,7 +11,6 @@ fn main() { process::exit(1); }); - if let Err(e) = run(config) { eprintln!("Application error: {e}"); process::exit(1); diff --git a/listings/ch19-patterns-and-matching/listing-19-29/src/main.rs b/listings/ch19-patterns-and-matching/listing-19-29/src/main.rs index f29774f329..325af3057a 100644 --- a/listings/ch19-patterns-and-matching/listing-19-29/src/main.rs +++ b/listings/ch19-patterns-and-matching/listing-19-29/src/main.rs @@ -7,9 +7,9 @@ fn main() { let msg = Message::Hello { id: 5 }; match msg { - Message::Hello { - id: id @ 3..=7, - } => println!("Found an id in range: {id}"), + Message::Hello { id: id @ 3..=7 } => { + println!("Found an id in range: {id}") + } Message::Hello { id: 10..=12 } => { println!("Found an id in another range") } From cfb66a9802d88ada8dcc956d221314752fd2e4a5 Mon Sep 17 00:00:00 2001 From: "Carol (Nichols || Goulding)" Date: Tue, 29 Jul 2025 20:18:19 -0400 Subject: [PATCH 8/8] Fix path replacement in miri example --- .../listing-20-07/output.txt | 14 +++++++------- tools/update-rustc.sh | 5 ++++- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/listings/ch20-advanced-features/listing-20-07/output.txt b/listings/ch20-advanced-features/listing-20-07/output.txt index e721ac6034..ef123ce651 100644 --- a/listings/ch20-advanced-features/listing-20-07/output.txt +++ b/listings/ch20-advanced-features/listing-20-07/output.txt @@ -1,11 +1,11 @@ $ cargo +nightly miri run Compiling unsafe-example v0.1.0 (file:///projects/unsafe-example) Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.01s - Running `file:///home/.rustup/toolchains/nightly-aarch64-apple-darwin/bin/cargo-miri runner target/miri/aarch64-apple-darwin/debug/unsafe-example` + Running `file:///home/.rustup/toolchains/nightly/bin/cargo-miri runner target/miri/debug/unsafe-example` warning: integer-to-pointer cast - --> src/main.rs:6:13 + --> src/main.rs:5:13 | -6 | let r = address as *mut i32; +5 | let r = address as *mut i32; | ^^^^^^^^^^^^^^^^^^^ integer-to-pointer cast | = help: this program is using integer-to-pointer casts or (equivalently) `ptr::with_exposed_provenance`, which means that Miri might miss pointer bugs in this program @@ -14,18 +14,18 @@ warning: integer-to-pointer cast = help: you can then set `MIRIFLAGS=-Zmiri-strict-provenance` to ensure you are not relying on `with_exposed_provenance` semantics = help: alternatively, `MIRIFLAGS=-Zmiri-permissive-provenance` disables this warning = note: BACKTRACE: - = note: inside `main` at src/main.rs:6:13: 6:32 + = note: inside `main` at src/main.rs:5:13: 5:32 error: Undefined Behavior: pointer not dereferenceable: pointer must be dereferenceable for 40000 bytes, but got 0x1234[noalloc] which is a dangling pointer (it has no provenance) - --> src/main.rs:8:35 + --> src/main.rs:7:35 | -8 | let values: &[i32] = unsafe { slice::from_raw_parts_mut(r, 10000) }; +7 | let values: &[i32] = unsafe { slice::from_raw_parts_mut(r, 10000) }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Undefined Behavior occurred here | = help: this indicates a bug in the program: it performed an invalid operation, and caused Undefined Behavior = help: see https://doc.rust-lang.org/nightly/reference/behavior-considered-undefined.html for further information = note: BACKTRACE: - = note: inside `main` at src/main.rs:8:35: 8:70 + = note: inside `main` at src/main.rs:7:35: 7:70 note: some details are omitted, run with `MIRIFLAGS=-Zmiri-backtrace=full` for a verbose backtrace diff --git a/tools/update-rustc.sh b/tools/update-rustc.sh index 8e674e0569..7ee40a0e9e 100755 --- a/tools/update-rustc.sh +++ b/tools/update-rustc.sh @@ -80,10 +80,13 @@ find -s listings -name output.txt -print0 | while IFS= read -r -d '' f; do # # - Replaces the path up to `.rustup/toolchains` with `file:///home`, while # preserving leading spaces and the `-->`. - # - Replaces the version-and-architecture-tripl with just the version, so + # - Replaces the version-and-architecture-triple with just the version, so # e.g. `1.82-aarch64-apple-darwin` becomes `1.82`. sed -i '' -E -e 's@^([[:space:]]*-->[[:space:]]+).*(\.rustup/toolchains/[[:digit:]]+\.[[:digit:]]+)([^/]*)@\1file:///home/\2@' "${full_output_path}" + # Similarly, replace Miri paths + sed -i '' -E -e "s@Running \`(.*)\.rustup/toolchains/nightly([^/]*)/bin/cargo-miri runner target/miri/([^/]*)/debug/([^/]*)@Running \`file:///home/.rustup/toolchains/nightly/bin/cargo-miri runner target/miri/debug/\4@" "${full_output_path}" + # Restore the previous compile time, if there is one if [ -n "${compile_time}" ]; then sed -i '' -E -e "s/Finished \`(dev|test)\` profile \[unoptimized \+ debuginfo] target\(s\) in [0-9.]*/Finished \`\1\` profile [unoptimized + debuginfo] target(s) in ${compile_time}/" "${full_output_path}"