_ExpressibleByDictionaryLiteral
public protocol _ExpressibleByDictionaryLiteralCompiler-internal protocol for dictionary-literal lowering.
The compiler lowers [k1: v1, k2: v2] into a call with a raw pointer
to a (Key, Value) buffer. As with array literals, user types should
prefer ExpressibleByDictionaryLiteral.
Associated Types
type Key
type Keytype Value
type ValueInitializers
init(consuming lang.ptr[(Key, Value)], consuming lang.i64)
init(consuming lang.ptr[(Key, Value)], consuming lang.i64)Compiler-emitted init taking a raw (Key, Value) pointer and count.
Both params are consuming for the same reason as the array
bridge: the compiler hands ownership of the stack buffer to the
implementation. MIR lowering matches on the unwrapped param
shape, so an impl that deviates from this convention will be
skipped during literal lowering.
Defined in lang/std/core/literals.ks