Contract Programming - D Programming Language (original) (raw)

Contents

  1. Assert Contract
  2. Pre and Post Contracts
  3. Invariants
  4. References

Contracts enable specifying conditions that must hold true when the flow of runtime execution reaches the contract. If a contract is not true, then the program is assumed to have entered an undefined state.

Rationale:

Building contract support into the language provides:

  1. a consistent look and feel for the contracts
  2. tool support
  3. the implementation can generate better code using information gathered from the contracts
  4. easier management and enforcement of contracts
  5. handling of contract inheritance

Contracts make D bug resistant

Assert Contract

See AssertExpression.

Pre and Post Contracts

See:

Invariants

See Struct Invariants and Class Invariants.

References

Copyright © 1999-2025 by the D Language Foundation | Page generated byDdoc on Sat May 3 22:41:59 2025