---
title: Numeric Protocols
framework: swift
role: collectionGroup
role_heading: API Collection
path: swift/numeric-protocols
---

# Numeric Protocols

Write generic code that works with any numeric type.

## Topics

### Basic Arithmetic

- [AdditiveArithmetic](swift/additivearithmetic.md)
- [Numeric](swift/numeric.md)
- [SignedNumeric](swift/signednumeric.md)
- [Strideable](swift/strideable.md)

### Integer

- [BinaryInteger](swift/binaryinteger.md)
- [FixedWidthInteger](swift/fixedwidthinteger.md)
- [SignedInteger](swift/signedinteger.md)
- [UnsignedInteger](swift/unsignedinteger.md)

### Floating Point

- [FloatingPoint](swift/floatingpoint.md)
- [BinaryFloatingPoint](swift/binaryfloatingpoint.md)

### Floating-Point Characteristics

- [FloatingPointClassification](swift/floatingpointclassification.md)
- [FloatingPointRoundingRule](swift/floatingpointroundingrule.md)
- [FloatingPointSign](swift/floatingpointsign.md)

## See Also

### Advanced Numerics

- [Special-Use Numeric Types](swift/special-use-numeric-types.md)
- [SIMD Vector Types](swift/simd-vector-types.md)
- [Global Numeric Functions](swift/global-numeric-functions.md)
