

これは新しい CloudFormation テンプレートリファレンスガイドです。ブックマークとリンクを更新してください。CloudFormation の開始方法については、『[AWS CloudFormation ユーザーガイド](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)』を参照してください。

# `Fn::Transform`
<a name="intrinsic-function-reference-transform"></a>

組み込み関数 `Fn::Transform` は、スタックテンプレートの一部に対してカスタム処理を実行するためのマクロを指定します。マクロを使用すると、検索して置換操作のような単純なアクションからテンプレート全体の広範な変換まで、テンプレートに対してカスタム処理を実行できるようになります。詳細については、『AWS CloudFormation ユーザーガイド』の「CloudFormation マクロを使用したテンプレートのカスタム処理の実行」を参照してください。

`Fn::Transform` を使用して [`AWS::Include` 変換](transform-aws-include.md) トランスフォームを呼び出すこともできます。これは CloudFormation によってホストされるマクロです。

## 宣言
<a name="intrinsic-function-reference-transform-declaration"></a>

### JSON
<a name="intrinsic-function-reference-transform-syntax.json"></a>

完全関数名の構文:

```
{
    "Fn::Transform": {
        "Name": "macro name",
        "Parameters": {
            "Key": "value"
        }
    }
}
```

短縮形の構文:

```
{
    "Transform": {
        "Name": "macro name",
        "Parameters": {
            "Key": "value"
        }
    }
}
```

### YAML
<a name="intrinsic-function-reference-transform-syntax.yaml"></a>

完全関数名の構文:

```
Fn::Transform:
  Name : macro name
  Parameters :
    Key : value
```

短縮形の構文:

```
!Transform
  Name: macro name
  Parameters:
    Key: value
```

## パラメータ
<a name="intrinsic-function-reference-transform-parameters"></a>

`Name`  
処理を実行するマクロの名前。

`Parameters`  
マクロに渡すキーと値のペアとして指定されたリストパラメータ。

## 戻り値
<a name="intrinsic-function-reference-transform-returnvalue"></a>

処理済みスタックテンプレートに含める処理済みテンプレートスニペット。

## 例
<a name="intrinsic-function-reference-transform-examples"></a>

次の例では、`AWS::Include` 変換を呼び出し、テンプレートスニペットを取得する場所を `InputValue` パラメータに渡すように指定します。

### JSON
<a name="intrinsic-function-reference-transform-example-1.json"></a>

```
{
    "Fn::Transform": {
        "Name": "AWS::Include",
        "Parameters": {
            "Location": {
                "Ref": "InputValue"
            }
        }
    }
}
```

### YAML
<a name="intrinsic-function-reference-transform-example-1.yaml"></a>

```
Fn::Transform:
  Name: AWS::Include
  Parameters:
    Location: !Ref InputValue
```

## サポートされている関数
<a name="intrinsic-function-reference-transform-supported-functions"></a>

なし。

CloudFormation は、`Fn::Transform` に含まれるすべての組み込み関数呼び出しをリテラル文字列として指定されたマクロに渡します。