---
schema_version: "1"
id: e2149e24eb8453a853bd867388470cc938adc57c094c700065da83733f36a50c
title: コアアノテーション (dw::Core)
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/dataweave/2.5/dw-core-annotations.md
canonical_url: https://docs.mulesoft.com/jp/dataweave/2.5/dw-core-annotations
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 32f5f5944422ff777d24ae0a1461b075a3a60c7109b2eba51c621518272abfb7
description: MuleSoft Documentation Site
release: "2.5"
latest: false
---
# コアアノテーション (dw::Core)

<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 16.6666%;">
<col style="width: 33.3333%;">
<col style="width: 50.0001%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">アノテーション</th>
<th class="tableblock halign-left valign-top">定義</th>
<th class="tableblock halign-left valign-top">説明</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">AnnotationTarget</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@AnnotationTarget(targets: Array&lt;"Function" | "Parameter" | "Variable" | "Import"&gt;)</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>アノテーションの適用を制限するアノテーション。例として、アノテーション ​<code>annotation TailRec()</code>​ のスコープを関数および変数に制限する ​<code>@AnnotationTarget(targets = ["Function", "Variable"])</code>​ があります。​<code>AnnotationTarget</code>​ を指定しなかった場合、アノテーションは任意の有効な対象に適用できます。</p>
</div>
<div class="paragraph">
<p>アノテーションの対象:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>Parameter</code>​: 関数のパラメーター。</p>
</li>
<li>
<p><code>Function</code>​: 関数の定義。</p>
</li>
<li>
<p><code>Variable</code>​: 変数の定義。</p>
</li>
<li>
<p><code>Import</code>​: インポートの定義。</p>
</li>
</ul>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">非推奨</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@Deprecated(since: String, replacement: String)</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>関数を非推奨としてマークするアノテーション。</p>
</div>
<div class="paragraph">
<p><em>DataWeave バージョン 2.4.0 で導入されました。</em>​</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">DesignOnlyType</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@DesignOnlyType()</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>パラメーターの型を​<em>設計のみ</em>​としてマークし、データ型が設計時のみ検証されることを示すアノテーション。実行時には最小限の検証が実行されます。このアノテーションは、特に複雑な Object (オブジェクト) 型でパフォーマンスを高めるのに役立ちます。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Experimental</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@Experimental()</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>機能を実験的として識別し、今後変更や削除される可能性があることを示すアノテーション。</p>
</div>
<div class="paragraph">
<p><em>DataWeave バージョン 2.4.0 で導入されました。</em>​</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">GlobalDescription</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@GlobalDescription()</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>関数のドキュメントで使用する関数の説明を識別するために使用されるアノテーション。このアノテーションは、関数がオーバーロード状態のときに適切な関数の説明を選択するのに役立ちます。</p>
</div>
<div class="paragraph">
<p><em>DataWeave バージョン 2.4.0 で導入されました。</em>​</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Interceptor</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@Interceptor(interceptorFunction: String | (annotationArgs: Object, targetFunctionName: String, args: Array&lt;Any&gt;, callback: (args: Array&lt;Any&gt;) -&gt; Any) -&gt; Any)</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>別のアノテーションをインターセプターとしてマークし、マークされたアノテーションによってアノテーションを付加された関数が ​<code>interceptorFunction</code>​ でラップされるようにするアノテーション。
例としては、​<code>@Interceptor(interceptorFunction = "@native system::SecurityManagerCheckFunctionValue")</code>​ によってアノテーションが付加される ​<code>RuntimePrivilege</code>​ アノテーションがあります。
<code>readUrl</code>​ 関数の定義は ​<code>@RuntimePrivilege(requires = "Resource")</code>​ によってアノテーションが付加されます。</p>
</div>
<div class="paragraph">
<p><em>実験的:</em>​ この実験的機能は、DataWeave の将来のバージョンで変更または削除される場合があります。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">内部</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@Internal(permits: Array&lt;String&gt;)</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>関数を​<em>内部</em>​とマークするアノテーションで、使用されないことを示します。</p>
</div>
<div class="literalblock">
<div class="content">
<pre>​_DataWeave 2.4.0 で導入されました。Mule 4.4.0 以降でサポートされます。_​</pre>
</div>
</div>
<div class="paragraph">
<p><em>実験的:</em>​ この実験的機能は、DataWeave の将来のバージョンで変更または削除される場合があります。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Labels (ラベル)</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@Labels(labels: Array&lt;String&gt;)</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>関数または変数定義に表示ラベルを付けて、見つけやすくするためのアノテーション。例としては、​<code>@Labels(labels =["append", "concat"])</code>​ があります。</p>
</div>
<div class="paragraph">
<p><em>DataWeave バージョン 2.4.0 で導入されました。</em>​</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Lazy (遅延)</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@Lazy()</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>遅延初期化のために変数宣言をマークするアノテーション。</p>
</div>
<div class="paragraph">
<p><em>DataWeave バージョン 2.3.0 で導入されました。</em>​</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">RuntimePrivilege</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@RuntimePrivilege(requires: String)</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>関数を実行するには実行時権限が必要であることを示すためのアノテーション。例としては、​<code>readUrl</code>​ 関数の定義にアノテーションを付加する ​<code>@RuntimePrivilege(requires = "Resource")</code>​ があります。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Since (以降)</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@Since(version: String)</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>アノテーションが付加された機能が導入された DataWeave バージョンを明らかにするアノテーション。例としては、​<code>@Since(version = "2.4.0")</code>​ があります。</p>
</div>
<div class="paragraph">
<p><em>DataWeave 2.3.0 で導入されました。Mule 4.3 以降でサポートされます。</em>​</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">StreamCapable</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@StreamCapable()</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>パラメーターをストリーム対応としてマークするアノテーション。これは、この項目が前方移動のみの方法でオブジェクトの配列をコンシュームすることを意味します。​<code>@StreamCapable</code>​ 項目が含まれる関数の例としては、​<code>map</code>​、​<code>mapObject</code>​、​<code>pluck</code>​ があります。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">TailRec</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@TailRec()</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>関数を末尾再帰としてマークするアノテーション。このアノテーションが付加された関数が末尾再帰でない場合、関数は失敗します。</p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">UntrustedCode</p></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p><code>@UntrustedCode(privileges: Array&lt;String&gt;)</code></p>
</div></div></td>
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
<p>スクリプトを信用できないとマークするアノテーション。これは、スクリプトに権限がないことを意味します。たとえば、そのようなスクリプトでは環境変数へのアクセス権を取得したり URL からのリソースを読み取ったりすることができません。</p>
</div>
<div class="paragraph">
<p><em>実験的:</em>​ この実験的機能は、DataWeave の将来のバージョンで変更または削除される場合があります。</p>
</div></div></td>
</tr>
</tbody>
</table>