return - 從一個過程中返回
return ?
-code code? ?
-errorinfo info?
?
-errorcode code? ?
string?
從當前過程(或頂層命令或
source
命令)中立即返回,用
string
作為返回值。如果未指定
string,則返回一個空串作為結果。
通常在未指定
-code
選項的情況下,過程將正常返回(它的完成程式碼是
TCL_OK)。但是,可以使用
-code
選項來生成一個異常的過程返回。
Code 可以是某個下列值:
- ok
- 正常返回:
如同這個選項被省略。
- error
- 錯誤返回: 除了
errorInfo 和 errorCode
變數的處理之外,同於使用
error
命令終止過程(見後)。
- return
- 返回當前過程並加上一個
TCL_RETURN
完成程式碼,這將導致呼叫它的那個過程也返回。
- break
- 返回當前過程並加上一個
TCL_BREAK
完成程式碼,它將終止呼叫當前過程的程式碼中的最內層巢狀迴圈。
- continue
- 返回當前過程並加上一個
TCL_CONTINUE
完成程式碼,它終止呼叫當前過程的程式碼中的最內層巢狀迴圈的當前重複操作。
- value
-
Value
必須是一個整數;把它作為當前過程的完成程式碼返回。
很少使用
-code
選項。提供它目的讓實現新控制結構的命令可以向它的呼叫者反映異常條件。
兩個補充的選項,
-errorinfo 和
-errorcode,可以被用來在錯誤返回期間提供補充資訊。除非
code 是
error,否則忽略這些選項。
-errorinfo 選項為
errorInfo
變數指定一個初始棧跟蹤;如果未指定它,則留在
errorInfo
中的棧跟蹤將包括對這個過程的呼叫和棧上的更高層次,但不包括有關過程中錯誤上下文的任何資訊。典型的,在
catch
命令在這個過程中捕獲到一個錯誤之後,把留在
errorInfo 中的值提供為
info
值。
如果指定了
-errorcode
選項,則
code 為
errorCode
變數提供一個值。如果未指定這個選項,則
errorCode 預設為
NONE。
break(n),
continue(n),
error(n),
proc(n)
break, continue, error, procedure, return
寒蟬退士
2001/06/21
http://cmpp.linuxforum.net
本頁面中文版由中文 man
手冊頁計劃提供。
中文 man 手冊頁計劃:
https://github.com/man-pages-zh/manpages-zh