libcouchbase-mapo 1.4.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +20 -0
- data/.gitmodules +3 -0
- data/.rspec +1 -0
- data/.travis.yml +38 -0
- data/Gemfile +4 -0
- data/LICENSE +24 -0
- data/README.md +445 -0
- data/Rakefile +76 -0
- data/ext/README.md +6 -0
- data/ext/Rakefile +19 -0
- data/lib/libcouchbase.rb +40 -0
- data/lib/libcouchbase/bucket.rb +825 -0
- data/lib/libcouchbase/callbacks.rb +69 -0
- data/lib/libcouchbase/connection.rb +886 -0
- data/lib/libcouchbase/design_docs.rb +92 -0
- data/lib/libcouchbase/error.rb +68 -0
- data/lib/libcouchbase/ext/libcouchbase.rb +1175 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdbase.rb +23 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdcounter.rb +36 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdendure.rb +26 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdfts.rb +24 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdget.rb +30 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdgetreplica.rb +49 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdhttp.rb +58 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdn1ql.rb +40 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdobseqno.rb +33 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdobserve.rb +30 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdstore.rb +40 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdstoredur.rb +45 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdsubdoc.rb +61 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdverbosity.rb +29 -0
- data/lib/libcouchbase/ext/libcouchbase/cmdviewquery.rb +61 -0
- data/lib/libcouchbase/ext/libcouchbase/contigbuf.rb +14 -0
- data/lib/libcouchbase/ext/libcouchbase/create_st.rb +15 -0
- data/lib/libcouchbase/ext/libcouchbase/create_st0.rb +23 -0
- data/lib/libcouchbase/ext/libcouchbase/create_st1.rb +26 -0
- data/lib/libcouchbase/ext/libcouchbase/create_st2.rb +32 -0
- data/lib/libcouchbase/ext/libcouchbase/create_st3.rb +26 -0
- data/lib/libcouchbase/ext/libcouchbase/crst_u.rb +20 -0
- data/lib/libcouchbase/ext/libcouchbase/durability_opts_st_v.rb +11 -0
- data/lib/libcouchbase/ext/libcouchbase/durability_opts_t.rb +14 -0
- data/lib/libcouchbase/ext/libcouchbase/durabilityopt_sv0.rb +63 -0
- data/lib/libcouchbase/ext/libcouchbase/enums.rb +1007 -0
- data/lib/libcouchbase/ext/libcouchbase/fragbuf.rb +18 -0
- data/lib/libcouchbase/ext/libcouchbase/ftshandle.rb +7 -0
- data/lib/libcouchbase/ext/libcouchbase/histogram.rb +34 -0
- data/lib/libcouchbase/ext/libcouchbase/http_request_t.rb +7 -0
- data/lib/libcouchbase/ext/libcouchbase/keybuf.rb +20 -0
- data/lib/libcouchbase/ext/libcouchbase/multicmd_ctx.rb +30 -0
- data/lib/libcouchbase/ext/libcouchbase/mutation_token.rb +17 -0
- data/lib/libcouchbase/ext/libcouchbase/n1qlhandle.rb +7 -0
- data/lib/libcouchbase/ext/libcouchbase/n1qlparams.rb +7 -0
- data/lib/libcouchbase/ext/libcouchbase/respbase.rb +29 -0
- data/lib/libcouchbase/ext/libcouchbase/respcounter.rb +32 -0
- data/lib/libcouchbase/ext/libcouchbase/respendure.rb +49 -0
- data/lib/libcouchbase/ext/libcouchbase/respfts.rb +40 -0
- data/lib/libcouchbase/ext/libcouchbase/respget.rb +44 -0
- data/lib/libcouchbase/ext/libcouchbase/resphttp.rb +48 -0
- data/lib/libcouchbase/ext/libcouchbase/respmcversion.rb +38 -0
- data/lib/libcouchbase/ext/libcouchbase/respn1ql.rb +41 -0
- data/lib/libcouchbase/ext/libcouchbase/respobseqno.rb +52 -0
- data/lib/libcouchbase/ext/libcouchbase/respobserve.rb +41 -0
- data/lib/libcouchbase/ext/libcouchbase/respserverbase.rb +32 -0
- data/lib/libcouchbase/ext/libcouchbase/respstats.rb +38 -0
- data/lib/libcouchbase/ext/libcouchbase/respstore.rb +32 -0
- data/lib/libcouchbase/ext/libcouchbase/respstoredur.rb +38 -0
- data/lib/libcouchbase/ext/libcouchbase/respsubdoc.rb +35 -0
- data/lib/libcouchbase/ext/libcouchbase/respviewquery.rb +67 -0
- data/lib/libcouchbase/ext/libcouchbase/sdentry.rb +22 -0
- data/lib/libcouchbase/ext/libcouchbase/sdspec.rb +31 -0
- data/lib/libcouchbase/ext/libcouchbase/t.rb +7 -0
- data/lib/libcouchbase/ext/libcouchbase/valbuf.rb +22 -0
- data/lib/libcouchbase/ext/libcouchbase/valbuf_u_buf.rb +14 -0
- data/lib/libcouchbase/ext/libcouchbase/viewhandle.rb +7 -0
- data/lib/libcouchbase/ext/libcouchbase_libuv.rb +22 -0
- data/lib/libcouchbase/ext/tasks.rb +39 -0
- data/lib/libcouchbase/n1ql.rb +78 -0
- data/lib/libcouchbase/query_full_text.rb +147 -0
- data/lib/libcouchbase/query_n1ql.rb +123 -0
- data/lib/libcouchbase/query_view.rb +135 -0
- data/lib/libcouchbase/results_fiber.rb +281 -0
- data/lib/libcouchbase/results_native.rb +220 -0
- data/lib/libcouchbase/subdoc_request.rb +139 -0
- data/lib/libcouchbase/version.rb +5 -0
- data/libcouchbase.gemspec +68 -0
- data/spec/bucket_spec.rb +290 -0
- data/spec/connection_spec.rb +257 -0
- data/spec/design_docs_spec.rb +31 -0
- data/spec/error_spec.rb +26 -0
- data/spec/fts_spec.rb +135 -0
- data/spec/n1ql_spec.rb +206 -0
- data/spec/results_libuv_spec.rb +244 -0
- data/spec/results_native_spec.rb +259 -0
- data/spec/seed/2016-10-25T043505Z/2016-10-25T043505Z-full/bucket-default/design.json +1 -0
- data/spec/seed/2016-10-25T043505Z/2016-10-25T043505Z-full/bucket-default/node-127.0.0.1%3A8091/data-0000.cbb +0 -0
- data/spec/seed/2016-10-25T043505Z/2016-10-25T043505Z-full/bucket-default/node-127.0.0.1%3A8091/failover.json +1 -0
- data/spec/seed/2016-10-25T043505Z/2016-10-25T043505Z-full/bucket-default/node-127.0.0.1%3A8091/meta.json +1 -0
- data/spec/seed/2016-10-25T043505Z/2016-10-25T043505Z-full/bucket-default/node-127.0.0.1%3A8091/seqno.json +1 -0
- data/spec/seed/2016-10-25T043505Z/2016-10-25T043505Z-full/bucket-default/node-127.0.0.1%3A8091/snapshot_markers.json +1 -0
- data/spec/subdoc_spec.rb +192 -0
- data/spec/view_spec.rb +201 -0
- data/windows_build.md +36 -0
- metadata +265 -0
@@ -0,0 +1,41 @@
|
|
1
|
+
module Libcouchbase::Ext
|
2
|
+
# (Not documented)
|
3
|
+
#
|
4
|
+
# ## Fields:
|
5
|
+
# :cookie ::
|
6
|
+
# (FFI::Pointer(*Void))
|
7
|
+
# :key ::
|
8
|
+
# (FFI::Pointer(*Void))
|
9
|
+
# :nkey ::
|
10
|
+
# (Integer)
|
11
|
+
# :cas ::
|
12
|
+
# (Integer)
|
13
|
+
# :rc ::
|
14
|
+
# (ErrorT)
|
15
|
+
# :version ::
|
16
|
+
# (Integer)
|
17
|
+
# :rflags ::
|
18
|
+
# (Integer)
|
19
|
+
# :row ::
|
20
|
+
# (String) Current result row. If #rflags has the ::LCB_RESP_F_FINAL bit set, then
|
21
|
+
# this field does not contain the actual row, but the remainder of the
|
22
|
+
# data not included with the resultset; e.g. the JSON surrounding
|
23
|
+
# the "results" field with any errors or metadata for the response.
|
24
|
+
# :nrow ::
|
25
|
+
# (Integer) Length of the row
|
26
|
+
# :htresp ::
|
27
|
+
# (RESPHTTP) Raw HTTP response, if applicable
|
28
|
+
class RESPN1QL < FFI::Struct
|
29
|
+
layout :cookie, :pointer,
|
30
|
+
:key, :pointer,
|
31
|
+
:nkey, :ulong,
|
32
|
+
:cas, :ulong_long,
|
33
|
+
:rc, ErrorT,
|
34
|
+
:version, :ushort,
|
35
|
+
:rflags, :ushort,
|
36
|
+
:row, :pointer,
|
37
|
+
:nrow, :ulong,
|
38
|
+
:htresp, RESPHTTP.by_ref
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
@@ -0,0 +1,52 @@
|
|
1
|
+
module Libcouchbase::Ext
|
2
|
+
# (Not documented)
|
3
|
+
#
|
4
|
+
# ## Fields:
|
5
|
+
# :cookie ::
|
6
|
+
# (FFI::Pointer(*Void))
|
7
|
+
# :key ::
|
8
|
+
# (FFI::Pointer(*Void))
|
9
|
+
# :nkey ::
|
10
|
+
# (Integer)
|
11
|
+
# :cas ::
|
12
|
+
# (Integer)
|
13
|
+
# :rc ::
|
14
|
+
# (ErrorT)
|
15
|
+
# :version ::
|
16
|
+
# (Integer)
|
17
|
+
# :rflags ::
|
18
|
+
# (Integer)
|
19
|
+
# :vbid ::
|
20
|
+
# (Integer) < vBucket ID (for potential mapping)
|
21
|
+
# :server_index ::
|
22
|
+
# (Integer) < Input server index
|
23
|
+
# :cur_uuid ::
|
24
|
+
# (Integer) < UUID for this vBucket as known to the server
|
25
|
+
# :persisted_seqno ::
|
26
|
+
# (Integer) < Highest persisted sequence
|
27
|
+
# :mem_seqno ::
|
28
|
+
# (Integer) < Highest known sequence
|
29
|
+
# :old_uuid ::
|
30
|
+
# (Integer) In the case where the command's uuid is not the most current, this
|
31
|
+
# contains the last known UUID
|
32
|
+
# :old_seqno ::
|
33
|
+
# (Integer) If #old_uuid is nonzero, contains the highest sequence number persisted
|
34
|
+
# in the #old_uuid snapshot.
|
35
|
+
class RESPOBSEQNO < FFI::Struct
|
36
|
+
layout :cookie, :pointer,
|
37
|
+
:key, :pointer,
|
38
|
+
:nkey, :ulong,
|
39
|
+
:cas, :ulong_long,
|
40
|
+
:rc, ErrorT,
|
41
|
+
:version, :ushort,
|
42
|
+
:rflags, :ushort,
|
43
|
+
:vbid, :ushort,
|
44
|
+
:server_index, :ushort,
|
45
|
+
:cur_uuid, :ulong_long,
|
46
|
+
:persisted_seqno, :ulong_long,
|
47
|
+
:mem_seqno, :ulong_long,
|
48
|
+
:old_uuid, :ulong_long,
|
49
|
+
:old_seqno, :ulong_long
|
50
|
+
end
|
51
|
+
|
52
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
module Libcouchbase::Ext
|
2
|
+
# (Not documented)
|
3
|
+
#
|
4
|
+
# ## Fields:
|
5
|
+
# :cookie ::
|
6
|
+
# (FFI::Pointer(*Void))
|
7
|
+
# :key ::
|
8
|
+
# (FFI::Pointer(*Void))
|
9
|
+
# :nkey ::
|
10
|
+
# (Integer)
|
11
|
+
# :cas ::
|
12
|
+
# (Integer)
|
13
|
+
# :rc ::
|
14
|
+
# (ErrorT)
|
15
|
+
# :version ::
|
16
|
+
# (Integer)
|
17
|
+
# :rflags ::
|
18
|
+
# (Integer)
|
19
|
+
# :status ::
|
20
|
+
# (Integer) <Bit set of flags
|
21
|
+
# :ismaster ::
|
22
|
+
# (Integer) < Set to true if this response came from the master node
|
23
|
+
# :ttp ::
|
24
|
+
# (Integer) <Unused. For internal requests, contains the server index
|
25
|
+
# :ttr ::
|
26
|
+
# (Integer) <Unused
|
27
|
+
class RESPOBSERVE < FFI::Struct
|
28
|
+
layout :cookie, :pointer,
|
29
|
+
:key, :pointer,
|
30
|
+
:nkey, :ulong,
|
31
|
+
:cas, :ulong_long,
|
32
|
+
:rc, ErrorT,
|
33
|
+
:version, :ushort,
|
34
|
+
:rflags, :ushort,
|
35
|
+
:status, :uchar,
|
36
|
+
:ismaster, :uchar,
|
37
|
+
:ttp, :uint,
|
38
|
+
:ttr, :uint
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
module Libcouchbase::Ext
|
2
|
+
# (Not documented)
|
3
|
+
#
|
4
|
+
# ## Fields:
|
5
|
+
# :cookie ::
|
6
|
+
# (FFI::Pointer(*Void))
|
7
|
+
# :key ::
|
8
|
+
# (FFI::Pointer(*Void))
|
9
|
+
# :nkey ::
|
10
|
+
# (Integer)
|
11
|
+
# :cas ::
|
12
|
+
# (Integer)
|
13
|
+
# :rc ::
|
14
|
+
# (ErrorT)
|
15
|
+
# :version ::
|
16
|
+
# (Integer)
|
17
|
+
# :rflags ::
|
18
|
+
# (Integer)
|
19
|
+
# :server ::
|
20
|
+
# (String)
|
21
|
+
class RESPSERVERBASE < FFI::Struct
|
22
|
+
layout :cookie, :pointer,
|
23
|
+
:key, :pointer,
|
24
|
+
:nkey, :ulong,
|
25
|
+
:cas, :ulong_long,
|
26
|
+
:rc, ErrorT,
|
27
|
+
:version, :ushort,
|
28
|
+
:rflags, :ushort,
|
29
|
+
:server, :string
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
module Libcouchbase::Ext
|
2
|
+
# (Not documented)
|
3
|
+
#
|
4
|
+
# ## Fields:
|
5
|
+
# :cookie ::
|
6
|
+
# (FFI::Pointer(*Void))
|
7
|
+
# :key ::
|
8
|
+
# (FFI::Pointer(*Void))
|
9
|
+
# :nkey ::
|
10
|
+
# (Integer)
|
11
|
+
# :cas ::
|
12
|
+
# (Integer)
|
13
|
+
# :rc ::
|
14
|
+
# (ErrorT)
|
15
|
+
# :version ::
|
16
|
+
# (Integer)
|
17
|
+
# :rflags ::
|
18
|
+
# (Integer)
|
19
|
+
# :server ::
|
20
|
+
# (String)
|
21
|
+
# :value ::
|
22
|
+
# (String) < The value, if any, for the given statistic
|
23
|
+
# :nvalue ::
|
24
|
+
# (Integer) < Length of value
|
25
|
+
class RESPSTATS < FFI::Struct
|
26
|
+
layout :cookie, :pointer,
|
27
|
+
:key, :pointer,
|
28
|
+
:nkey, :ulong,
|
29
|
+
:cas, :ulong_long,
|
30
|
+
:rc, ErrorT,
|
31
|
+
:version, :ushort,
|
32
|
+
:rflags, :ushort,
|
33
|
+
:server, :string,
|
34
|
+
:value, :string,
|
35
|
+
:nvalue, :ulong
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
module Libcouchbase::Ext
|
2
|
+
# (Not documented)
|
3
|
+
#
|
4
|
+
# ## Fields:
|
5
|
+
# :cookie ::
|
6
|
+
# (FFI::Pointer(*Void))
|
7
|
+
# :key ::
|
8
|
+
# (FFI::Pointer(*Void))
|
9
|
+
# :nkey ::
|
10
|
+
# (Integer)
|
11
|
+
# :cas ::
|
12
|
+
# (Integer)
|
13
|
+
# :rc ::
|
14
|
+
# (ErrorT)
|
15
|
+
# :version ::
|
16
|
+
# (Integer)
|
17
|
+
# :rflags ::
|
18
|
+
# (Integer)
|
19
|
+
# :op ::
|
20
|
+
# (StorageT) The type of operation which was performed
|
21
|
+
class RESPSTORE < FFI::Struct
|
22
|
+
layout :cookie, :pointer,
|
23
|
+
:key, :pointer,
|
24
|
+
:nkey, :ulong,
|
25
|
+
:cas, :ulong_long,
|
26
|
+
:rc, ErrorT,
|
27
|
+
:version, :ushort,
|
28
|
+
:rflags, :ushort,
|
29
|
+
:op, StorageT
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
module Libcouchbase::Ext
|
2
|
+
# (Not documented)
|
3
|
+
#
|
4
|
+
# ## Fields:
|
5
|
+
# :cookie ::
|
6
|
+
# (FFI::Pointer(*Void))
|
7
|
+
# :key ::
|
8
|
+
# (FFI::Pointer(*Void))
|
9
|
+
# :nkey ::
|
10
|
+
# (Integer)
|
11
|
+
# :cas ::
|
12
|
+
# (Integer)
|
13
|
+
# :rc ::
|
14
|
+
# (ErrorT)
|
15
|
+
# :version ::
|
16
|
+
# (Integer)
|
17
|
+
# :rflags ::
|
18
|
+
# (Integer)
|
19
|
+
# :dur_resp ::
|
20
|
+
# (RESPENDURE) Internal durability response structure. This should never be NULL
|
21
|
+
# :store_ok ::
|
22
|
+
# (Integer) If the #rc field is not @ref LCB_SUCCESS, this field indicates
|
23
|
+
# what failed. If this field is nonzero, then the store operation failed,
|
24
|
+
# but the durability checking failed. If this field is zero then the
|
25
|
+
# actual storage operation failed.
|
26
|
+
class RESPSTOREDUR < FFI::Struct
|
27
|
+
layout :cookie, :pointer,
|
28
|
+
:key, :pointer,
|
29
|
+
:nkey, :ulong,
|
30
|
+
:cas, :ulong_long,
|
31
|
+
:rc, ErrorT,
|
32
|
+
:version, :ushort,
|
33
|
+
:rflags, :ushort,
|
34
|
+
:dur_resp, RESPENDURE.by_ref,
|
35
|
+
:store_ok, :int
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module Libcouchbase::Ext
|
2
|
+
# (Not documented)
|
3
|
+
#
|
4
|
+
# ## Fields:
|
5
|
+
# :cookie ::
|
6
|
+
# (FFI::Pointer(*Void))
|
7
|
+
# :key ::
|
8
|
+
# (FFI::Pointer(*Void))
|
9
|
+
# :nkey ::
|
10
|
+
# (Integer)
|
11
|
+
# :cas ::
|
12
|
+
# (Integer)
|
13
|
+
# :rc ::
|
14
|
+
# (ErrorT)
|
15
|
+
# :version ::
|
16
|
+
# (Integer)
|
17
|
+
# :rflags ::
|
18
|
+
# (Integer)
|
19
|
+
# :responses ::
|
20
|
+
# (FFI::Pointer(*Void))
|
21
|
+
# :bufh ::
|
22
|
+
# (FFI::Pointer(*Void)) Use with lcb_backbuf_ref/unref
|
23
|
+
class RESPSUBDOC < FFI::Struct
|
24
|
+
layout :cookie, :pointer,
|
25
|
+
:key, :pointer,
|
26
|
+
:nkey, :ulong,
|
27
|
+
:cas, :ulong_long,
|
28
|
+
:rc, ErrorT,
|
29
|
+
:version, :ushort,
|
30
|
+
:rflags, :ushort,
|
31
|
+
:responses, :pointer,
|
32
|
+
:bufh, :pointer
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
@@ -0,0 +1,67 @@
|
|
1
|
+
module Libcouchbase::Ext
|
2
|
+
# (Not documented)
|
3
|
+
#
|
4
|
+
# ## Fields:
|
5
|
+
# :cookie ::
|
6
|
+
# (FFI::Pointer(*Void))
|
7
|
+
# :key ::
|
8
|
+
# (FFI::Pointer(*Void))
|
9
|
+
# :nkey ::
|
10
|
+
# (Integer)
|
11
|
+
# :cas ::
|
12
|
+
# (Integer)
|
13
|
+
# :rc ::
|
14
|
+
# (ErrorT)
|
15
|
+
# :version ::
|
16
|
+
# (Integer)
|
17
|
+
# :rflags ::
|
18
|
+
# (Integer)
|
19
|
+
# :docid ::
|
20
|
+
# (String) < Document ID (i.e. memcached key) associated with this row
|
21
|
+
# :ndocid ::
|
22
|
+
# (Integer) < Length of document ID
|
23
|
+
# :value ::
|
24
|
+
# (String) Emitted value. If `rflags & LCB_RESP_F_FINAL` is true then this will
|
25
|
+
# contain the _metadata_ of the view response itself. This includes the
|
26
|
+
# `total_rows` field among other things, and should be parsed as JSON
|
27
|
+
# :nvalue ::
|
28
|
+
# (Integer) < Length of emitted value
|
29
|
+
# :geometry ::
|
30
|
+
# (String) If this is a spatial view, the GeoJSON geometry fields will be here
|
31
|
+
# :ngeometry ::
|
32
|
+
# (Integer)
|
33
|
+
# :htresp ::
|
34
|
+
# (RESPHTTP) If the request failed, this will contain the raw underlying request.
|
35
|
+
# You may inspect this request and perform some other processing on
|
36
|
+
# the underlying HTTP data. Note that this may not necessarily contain
|
37
|
+
# the entire response body; just the chunk at which processing failed.
|
38
|
+
# :docresp ::
|
39
|
+
# (RESPGET) If @ref LCB_CMDVIEWQUERY_F_INCLUDE_DOCS was specified in the request,
|
40
|
+
# this will contain the response for the _GET_ command. This is the same
|
41
|
+
# response as would be received in the `LCB_CALLBACK_GET` for
|
42
|
+
# lcb_get3().
|
43
|
+
#
|
44
|
+
# Note that this field should be checked for various errors as well, as it
|
45
|
+
# is remotely possible the get request did not succeed.
|
46
|
+
#
|
47
|
+
# If the @ref LCB_CMDVIEWQUERY_F_INCLUDE_DOCS flag was not specified, this
|
48
|
+
# field will be `NULL`.
|
49
|
+
class RESPVIEWQUERY < FFI::Struct
|
50
|
+
layout :cookie, :pointer,
|
51
|
+
:key, :pointer,
|
52
|
+
:nkey, :ulong,
|
53
|
+
:cas, :ulong_long,
|
54
|
+
:rc, ErrorT,
|
55
|
+
:version, :ushort,
|
56
|
+
:rflags, :ushort,
|
57
|
+
:docid, :pointer,
|
58
|
+
:ndocid, :ulong,
|
59
|
+
:value, :pointer,
|
60
|
+
:nvalue, :ulong,
|
61
|
+
:geometry, :pointer,
|
62
|
+
:ngeometry, :ulong,
|
63
|
+
:htresp, RESPHTTP.by_ref,
|
64
|
+
:docresp, RESPGET.by_ref
|
65
|
+
end
|
66
|
+
|
67
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module Libcouchbase::Ext
|
2
|
+
# (Not documented)
|
3
|
+
#
|
4
|
+
# ## Fields:
|
5
|
+
# :value ::
|
6
|
+
# (FFI::Pointer(*Void)) Value for the mutation (only applicable for ::LCB_SUBDOC_COUNTER, currently)
|
7
|
+
# :nvalue ::
|
8
|
+
# (Integer) Length of the value
|
9
|
+
# :status ::
|
10
|
+
# (ErrorT) Status code
|
11
|
+
# :index ::
|
12
|
+
# (Integer) Request index which this result pertains to. This field only
|
13
|
+
# makes sense for multi mutations where not all request specs are returned
|
14
|
+
# in the result
|
15
|
+
class SDENTRY < FFI::Struct
|
16
|
+
layout :value, :pointer,
|
17
|
+
:nvalue, :ulong,
|
18
|
+
:status, ErrorT,
|
19
|
+
:index, :uchar
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module Libcouchbase::Ext
|
2
|
+
# (Not documented)
|
3
|
+
#
|
4
|
+
# ## Fields:
|
5
|
+
# :sdcmd ::
|
6
|
+
# (Integer) The command code, @ref lcb_SUBDOCOP. There is no default for this
|
7
|
+
# value, and it therefore must be set.
|
8
|
+
# :options ::
|
9
|
+
# (Integer) Set of option flags for the command. Currently the only option known
|
10
|
+
# is @ref LCB_SDSPEC_F_MKINTERMEDIATES
|
11
|
+
# :path ::
|
12
|
+
# (KEYBUF) Path for the operation. This should be assigned using
|
13
|
+
# @ref LCB_SDSPEC_SET_PATH. The contents of the path should be valid
|
14
|
+
# until the operation is scheduled (lcb_subdoc3())
|
15
|
+
# :value ::
|
16
|
+
# (VALBUF) @value for the operation. This should be assigned using
|
17
|
+
# @ref LCB_SDSPEC_SET_VALUE. The contents of the value should be valid
|
18
|
+
# until the operation is scheduled (i.e. lcb_subdoc3())
|
19
|
+
class SDSPEC < FFI::Struct
|
20
|
+
MKINTERMEDIATES = (1<<16) # Create intermediate paths
|
21
|
+
XATTRPATH = (1<<18) # Access document XATTR path
|
22
|
+
XATTR_MACROVALUES = (1<<19) # Access document virtual/materialized path
|
23
|
+
XATTR_DELETED_OK = (1<<20) # Access Xattrs of deleted documents
|
24
|
+
|
25
|
+
layout :sdcmd, :uint,
|
26
|
+
:options, :uint,
|
27
|
+
:path, KEYBUF.by_value,
|
28
|
+
:value, VALBUF.by_value
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|