summaryrefslogtreecommitdiffhomepage
path: root/doc/requirements/IOAble.md
blob: 81aaa20db62f81d7f575e27f02d2836a1ce36324 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# IOAble (Container must be IO oriented)

## Abstract:

- Introduced: OCL v1.7
- Purpose: Gives a container the methods to communicate with injectors such as transaction<IOAble>, or std::ostream<IOAble>.

## Example:

```cpp
   struct IORound {
    long operator>>(float); 
    float operaotr<<(long);
    long operator*(); // latest IO value (copy-constructable). 
   };
```

## Sources:

- https://en.cppreference.com/w/cpp/named_req/CopyConstructible.html