---
title: Package.Dependency.Trait
framework: swift-package-manager
role: symbol
role_heading: Structure
path: swift-package-manager/documentation/packagedescription/package/dependency/trait
---

# Package.Dependency.Trait

An enabled trait of a dependency.

## Declaration

```swift
struct Trait
```

## Topics

### Declaring a Dependency Trait

- [trait(name:condition:)](swift-package-manager/documentation/packagedescription/package/dependency/trait/trait(name:condition:).md)
- [defaults](swift-package-manager/documentation/packagedescription/package/dependency/trait/defaults.md)

### Creating a Dependency Trait

- [init(name:condition:)](swift-package-manager/documentation/packagedescription/package/dependency/trait/init(name:condition:).md)
- [init(stringLiteral:)](swift-package-manager/documentation/packagedescription/package/dependency/trait/init(stringliteral:).md)
- [Package.Dependency.Trait.Condition](swift-package-manager/documentation/packagedescription/package/dependency/trait/condition-swift.struct.md)

### Inspecting a Dependency Trait

- [name](swift-package-manager/documentation/packagedescription/package/dependency/trait/name.md)
- [condition](swift-package-manager/documentation/packagedescription/package/dependency/trait/condition-swift.property.md)

### Default Implementations

- [Equatable Implementations](swift-package-manager/documentation/packagedescription/package/dependency/trait/equatable-implementations.md)
- [ExpressibleByExtendedGraphemeClusterLiteral Implementations](swift-package-manager/documentation/packagedescription/package/dependency/trait/expressiblebyextendedgraphemeclusterliteral-implementations.md)
- [ExpressibleByStringLiteral Implementations](swift-package-manager/documentation/packagedescription/package/dependency/trait/expressiblebystringliteral-implementations.md)

## Relationships

### Conforms To

- Swift.Equatable
- Swift.ExpressibleByExtendedGraphemeClusterLiteral
- Swift.ExpressibleByStringLiteral
- Swift.ExpressibleByUnicodeScalarLiteral
- Swift.Hashable
- Swift.Sendable
- Swift.SendableMetatype

## See Also

### Declaring Requirements

- [traits](swift-package-manager/documentation/packagedescription/package/dependency/traits.md)
- [Package.Dependency.RegistryRequirement](swift-package-manager/documentation/packagedescription/package/dependency/registryrequirement.md)
- [Package.Dependency.SourceControlRequirement](swift-package-manager/documentation/packagedescription/package/dependency/sourcecontrolrequirement.md)
