Skip to main content

use

The use statement incorporates traits into classes, enabling composition-based programming. It allows classes to inherit behavior from multiple traits without traditional inheritance limitations.

Basic Use Statement

Include a single trait in a class:

Using Multiple Traits

Include multiple traits in a single class:

Use with Trait Dependencies

Handle traits that depend on other traits:

Use with Method Overriding

Override trait methods in classes:

Use with Trait Composition

Compose complex behavior from multiple traits:

Use with Conditional Traits

Apply traits conditionally:

Use with Trait Parameterization

Parameterize trait behavior:

Use with Trait Mixins

Create mixin patterns with traits:

Use with Trait Conflicts

Handle method conflicts between traits:

Use with Selective Trait Inclusion

Include specific methods from traits:

Best Practices

  1. Use composition over inheritance: Traits enable better code reuse
  2. Keep traits focused: Each trait should have a single responsibility
  3. Handle conflicts explicitly: Resolve method conflicts in classes
  4. Document trait requirements: Make dependencies clear
  5. Use meaningful trait names: Names should describe behavior
The use statement provides a powerful way to compose behavior from multiple traits, enabling flexible and reusable code architecture in Soul.