[/
 / Copyright (c) 2003-2025 Christopher M. Kohlhoff (chris at kohlhoff dot com)
 /
 / Distributed under the Boost Software License, Version 1.0. (See accompanying
 / file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 /]

[section:GettableSerialPortOption Gettable serial port option requirements]

In the table below, `X` denotes a serial port option class, `a` denotes a value
of `X`, `ec` denotes a value of type `error_code`, and `s` denotes a value of
implementation-defined type ['[^storage]] (where ['[^storage]] is the type
`DCB` on Windows and `termios` on __POSIX__ platforms), and `u` denotes an
identifier.

[table GettableSerialPortOption requirements
  [[expression] [type] [assertion/note[br]pre/post-conditions]]
  [
    [
      `const `['[^storage]]`& u = s;`[br]
      `a.load(u, ec);`
    ]
    [`error_code`]
    [
      Retrieves the value of the serial port option from the storage.[br]
      [br]
      If successful, sets `ec` such that `!ec` is true. If an error occurred,
      sets `ec` such that `!!ec` is true. Returns `ec`.
    ]
  ]
]

[endsect]
