---
title: ExpressibleByExtendedGraphemeClusterLiteral
framework: swift
role: symbol
role_heading: Protocol
path: swift/expressiblebyextendedgraphemeclusterliteral
---

# ExpressibleByExtendedGraphemeClusterLiteral

A type that can be initialized with a string literal containing a single extended grapheme cluster.

## Declaration

```swift
protocol ExpressibleByExtendedGraphemeClusterLiteral : ExpressibleByUnicodeScalarLiteral
```

## Overview

Overview An extended grapheme cluster is a group of one or more Unicode scalar values that approximates a single user-perceived character.  Many individual characters, such as “é”, “김”, and “🇮🇳”, can be made up of multiple Unicode scalar values. These code points are combined by Unicode’s boundary algorithms into extended grapheme clusters. The String, StaticString, and Character types conform to the ExpressibleByExtendedGraphemeClusterLiteral protocol. You can initialize a variable or constant of any of these types using a string literal that holds a single character. let snowflake: Character = "❄︎" print(snowflake) // Prints "❄︎" Conforming to ExpressibleByExtendedGraphemeClusterLiteral To add ExpressibleByExtendedGraphemeClusterLiteral conformance to your custom type, implement the required initializer.

## Topics

### Associated Types

- [ExtendedGraphemeClusterLiteralType](swift/expressiblebyextendedgraphemeclusterliteral/extendedgraphemeclusterliteraltype.md)

### Initializers

- [init(extendedGraphemeClusterLiteral:)](swift/expressiblebyextendedgraphemeclusterliteral/init(extendedgraphemeclusterliteral:).md)

## Relationships

### Inherits From

- [ExpressibleByUnicodeScalarLiteral](swift/expressiblebyunicodescalarliteral.md)

### Inherited By

- [ExpressibleByStringInterpolation](swift/expressiblebystringinterpolation.md)
- [ExpressibleByStringLiteral](swift/expressiblebystringliteral.md)
- [StringProtocol](swift/stringprotocol.md)

### Conforming Types

- [Character](swift/character.md)
- [StaticString](swift/staticstring.md)
- [String](swift/string.md)
- [String.LocalizationValue](swift/string/localizationvalue.md)
- [Substring](swift/substring.md)

## See Also

### String Literals

- [ExpressibleByStringLiteral](swift/expressiblebystringliteral.md)
- [ExpressibleByUnicodeScalarLiteral](swift/expressiblebyunicodescalarliteral.md)
- [ExpressibleByStringInterpolation](swift/expressiblebystringinterpolation.md)
- [StringInterpolationProtocol](swift/stringinterpolationprotocol.md)
- [DefaultStringInterpolation](swift/defaultstringinterpolation.md)
