wantarray

如果目前執行的子常式或 eval 的內容正在尋找一個清單值,則會傳回 true。如果內容正在尋找一個純量,則會傳回 false。如果內容沒有在尋找任何值(無效內容),則會傳回未定義的值。

return unless defined wantarray; # don't bother doing more
my @a = complex_calculation();
return wantarray ? @a : "@a";

wantarray 的結果在檔案的最上層、BEGINUNITCHECKCHECKINITEND 區塊中,或在 DESTROY 方法中未指定。

這個函式應該命名為 wantlist() 才對。