SAService Architect Back to designer
SAService ArchitectDocumentation
Type system Map type

Map type

A key/value collection with explicit keyType and valueType.

When to use

Define this contract before assigning it to stream valueType or keyType.

Behavior

  • Both nested contracts remain visible to code generation.

Definition properties

Identity and representation

PropertyTypeDescription
namestring

Canonical named type referenced by streams and other types.

Required
typeint | uint | byte | char | boolean | unicode char | string | unicode string | float | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | any | error | array | map | struct | custom

DataType kind that controls generated representation, composition and serde behavior.

RequiredAllowed: int, uint, byte, char, boolean, unicode char, string, unicode string, float, double, int8, int16, int32, int64, uint8, uint16, uint32, uint64, any, error, array, map, struct, custom
definitionFormatNative | Protobuf | FlatBuffers | CapNProto | OpenAPI

Serialization or external definition format.

Allowed: Native, Protobuf, FlatBuffers, CapNProto, OpenAPI
descriptiontext

Generated type documentation.

Composition properties

Nested type references

PropertyTypeDescription
keyTypeType

Map key type.

map only
valueTypeType

Array item or map value type.

array or map

Code generation properties

Sharing and target-language behavior

PropertyTypeDescription
transferByValueboolean

Uses value rather than pointer/reference signatures.

Default: false
useAliasboolean

Generates a named alias for a built-in scalar or runtime contract.

Default: false
publicTypeboolean

Places the named type in a user-selected Module so it can be shared across services.

moduleModule

User-defined Module that owns a public type.

publicType = true
packagestring

Target-language package alias.

typeDefinitionLang*code

Inline target-language definition.

custom type

Configuration example

name: Map type
type: map