Vivado Tcl Store 内では、Tcl スクリプトはアプリに含まれ、アプリ (例: template
) は企業ごと (例: mycompany
) に提供されます。アプリは、特定のタイプの機能を提供するコンテナーです。名前の競合を回避するため、各アプリには独自の名前空間があります。アプリの完全な名前空間修飾子は、次のとおりです。
::tclapp::<company>::<app>
または
::tclapp::mycompany::template
次のようなコードがあるとします。
namespace eval ::tclapp::mycompany::template {namespace export my_command1
}
proc ::tclapp::mycompany::template::my_command1 { args } {
}
このコードでは、名前空間 my_command1
にプロシージャ ::tclapp::mycompany::template
を作成しています。my_command1
はユーザーにより実行されるので、アプリの名前空間からエクスポートする必要があります。これには、「namespace export my_command1
」を使用します。