תרגול קריאה חוזרת סינכרונית¶
הרחיבו את הספרייה כך ש־visit_range מקבלת גבול עליון וקוראת ל־callback עבור כל מספר לפניו. כתבו עטיפה שמקבלת closure המחזיר Result<(), String>, ועוצרת בשגיאה הראשונה בלי להשתמש בפאניקה לצורך בקרה רגילה.
שמרו ב־context את השגיאה הראשונה והחזירו אותה למשתמש רק אחרי שהפונקציה הזרה חזרה. הוסיפו בדיקה שהמספר שאחרי הכשל לא הגיע ל־callback. הסבירו מדוע אסור להחזיר לסי מצביע לתוכן של String זמני כדי לדווח על השגיאה.
נתחו גם שינוי חוזה שבו הספרייה שומרת את המצביע ומחזירה מיד. כתבו את רצף האירועים שיוביל לשימוש אחרי השמדה בעטיפה המקומית, בלי להריץ בכוונה קוד עם התנהגות לא מוגדרת.