changeset 86:3c2e8f9be2c2

backup 2021-09-08
author autobackup
date Wed, 08 Sep 2021 00:10:04 +0900
parents 41abdfffdb6f
children c3604a1c6b0e
files user/Itsuki/2021/8-31.md
diffstat 1 files changed, 16 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/user/Itsuki/2021/8-31.md	Tue Sep 07 00:10:04 2021 +0900
+++ b/user/Itsuki/2021/8-31.md	Wed Sep 08 00:10:04 2021 +0900
@@ -21,9 +21,24 @@
     - とりあえずrbtree_testのvalueをIntegerから付け替えてみる。
     - nodeのvalueはinterfaceを指定できる
         - SynchronizedQueueのinterfaceであるQueueに置き換えた。
-    - 今のところエラーは出てない様子。
     - いずれはnew記述に書き換える。
     - また、stubを直書きしているので最新の書き方にしたい。
     - (気付き)SychronizedQueueはCMakeListに書く際にはAtomicReference.cbcも一緒に追加する必要がある。
         - エラーが教えてくれる。
+    - Union data* の理解が浅いので勉強する
+Queueインターフェース
+```
+typedef struct Queue<>{
+    union Data* queue;
+    union Data* data;
+
+    __code whenEmpty(...);
+    __code clear(Impl* queue, __code next(...));
+    __code put(Impl* queue, union Data* data, __code next(...));
+    __code take(Impl* queue, __code next(union Data* data, ...));
+    __code isEmpty(Impl* queue, __code next(...), __code whenEmpty(...));
+    __code next(...);
+} Queue;
+```
+
     
\ No newline at end of file