213
214
215
216
217
218
219
220
221
222
223
224
225
226
...
489
490
491
492
493
494
495
496
497
498
499
500
501
502
|
elseif self.mode == 3 then
return 0,0,self.to_idx,self.from_idx
else lib.bail('invalid mode on timeline range!') end
end
struct m.post {
id: uint64
author: uint64
subject: str
body: str
acl: str
posted: m.timepoint
discovered: m.timepoint
edited: m.timepoint
................................................................................
circle_destroy: {&m.source, uint64, uint64} -> {}
circle_members_fetch_cid: {&m.source, &lib.mem.pool, uint64} -> lib.mem.ptr(uint64)
circle_members_fetch_name: {&m.source, &lib.mem.pool, uint64, pstring} -> lib.mem.ptr(uint64)
circle_members_add_uid: {&m.source, uint64, uint64} -> {}
circle_members_del_uid: {&m.source, uint64, uint64} -> {}
circle_memberships_uid: {&m.source, &lib.mem.pool, uint64, uint64} -> lib.mem.ptr(m.circle)
thread_latest_arrival_calc: {&m.source, uint64} -> m.timepoint
artifact_instantiate: {&m.source, lib.mem.ptr(uint8), lib.mem.ptr(int8)} -> uint64
-- instantiate an artifact in the database, either installing a new
-- artifact or returning the id of an existing artifact with the same hash
-- artifact: bytea
-- mime: pstring
|
|
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
...
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
|
elseif self.mode == 3 then
return 0,0,self.to_idx,self.from_idx
else lib.bail('invalid mode on timeline range!') end
end
struct m.post {
id: uint64
uri: str
author: uint64
subject: str
body: str
acl: str
posted: m.timepoint
discovered: m.timepoint
edited: m.timepoint
................................................................................
circle_destroy: {&m.source, uint64, uint64} -> {}
circle_members_fetch_cid: {&m.source, &lib.mem.pool, uint64} -> lib.mem.ptr(uint64)
circle_members_fetch_name: {&m.source, &lib.mem.pool, uint64, pstring} -> lib.mem.ptr(uint64)
circle_members_add_uid: {&m.source, uint64, uint64} -> {}
circle_members_del_uid: {&m.source, uint64, uint64} -> {}
circle_memberships_uid: {&m.source, &lib.mem.pool, uint64, uint64} -> lib.mem.ptr(m.circle)
thread_top_find: {&m.source, uint64} -> uint64
-- NOTE: this won't work if conversations are broken across multiple data sources!
-- if this is a thing that's likely to happen, the overlord-side wrapper for this
-- function (srv.t) should implement a more sophisticated algorithm over all the
-- data sources, instead of just stopping when one parent is found
thread_latest_arrival_calc: {&m.source, uint64} -> m.timepoint
artifact_instantiate: {&m.source, lib.mem.ptr(uint8), lib.mem.ptr(int8)} -> uint64
-- instantiate an artifact in the database, either installing a new
-- artifact or returning the id of an existing artifact with the same hash
-- artifact: bytea
-- mime: pstring
|