21#include "cbl_config.h" 
   24#include "CBL_Edition.h" 
  171#define CBL_REFCOUNTED(TYPE, NAME) \ 
  172    CBLINLINE const TYPE CBL##NAME##_Retain(const TYPE _cbl_nullable t) \ 
  173                                            {return (const TYPE)CBL_Retain((CBLRefCounted*)t);} \ 
  174    CBLINLINE void CBL##NAME##_Release(const TYPE _cbl_nullable t) {CBL_Release((CBLRefCounted*)t);} 
 
  227#ifdef COUCHBASE_ENTERPRISE 
  238#ifdef COUCHBASE_ENTERPRISE 
#define CBLAPI
Definition CBL_Compat.h:105
#define _cbl_nullable
Definition CBL_Compat.h:92
#define CBL_CAPI_BEGIN
Definition CBL_Compat.h:107
#define CBL_CAPI_END
Definition CBL_Compat.h:108
#define CBL_ENUM(_type, _name)
Definition CBL_Compat.h:62
struct CBLCert CBLCert
An opaque object representing the X.509 Certifcate.
Definition CBLBase.h:249
struct CBLBlob CBLBlob
A binary data value associated with a CBLDocument.
Definition CBLBase.h:210
struct CBLCollection CBLCollection
A collection, a document container.
Definition CBLBase.h:195
struct CBLDatabase CBLDatabase
A connection to an open database.
Definition CBLBase.h:183
struct CBLDocument CBLDocument
An in-memory copy of a document.
Definition CBLBase.h:204
struct CBLEncryptable CBLEncryptable
An encryptable value.
Definition CBLBase.h:246
CBLNetworkErrorCode
Definition CBLBase.h:82
CBLErrorDomain
Definition CBLBase.h:37
FLSliceResult CBLError_Message(const CBLError *_cbl_nullable outError)
Returns a message describing an error.
CBLErrorCode
Definition CBLBase.h:48
@ kCBLNetErrTimeout
No response received before timeout.
Definition CBLBase.h:85
@ kCBLNetErrTLSClientCertRequired
Server requires client to have a TLS certificate.
Definition CBLBase.h:91
@ kCBLNetErrTooManyRedirects
HTTP redirect loop.
Definition CBLBase.h:87
@ kCBLNetErrTLSCertNameMismatch
Server cert's name does not match DNS name.
Definition CBLBase.h:97
@ kCBLNetErrTLSCertExpired
Server's TLS certificate has expired.
Definition CBLBase.h:89
@ kCBLNetErrTLSCertRevoked
Server's cert has been revoked.
Definition CBLBase.h:96
@ kCBLNetErrTLSHandshakeFailed
Low-level error establishing TLS.
Definition CBLBase.h:88
@ kCBLNetErrUnknownHost
DNS server doesn't know the hostname.
Definition CBLBase.h:84
@ kCBLNetErrTLSCertUntrusted
Cert isn't trusted for other reason.
Definition CBLBase.h:90
@ kCBLNetErrInvalidURL
Invalid URL.
Definition CBLBase.h:86
@ kCBLNetErrUnknown
Unknown networking error.
Definition CBLBase.h:95
@ kCBLNetErrDNSFailure
DNS lookup failed.
Definition CBLBase.h:83
@ kCBLNetErrTLSCertUnknownRoot
Self-signed cert, or unknown anchor cert.
Definition CBLBase.h:93
@ kCBLNetErrTLSClientCertRejected
Server rejected my TLS client certificate.
Definition CBLBase.h:92
@ kCBLNetErrInvalidRedirect
Attempted redirect to invalid URL.
Definition CBLBase.h:94
@ kCBLWebSocketDomain
code is a WebSocket close code (1000...1015) or HTTP error (300..599)
Definition CBLBase.h:43
@ kCBLFleeceDomain
code is a Fleece error; see "FleeceException.h"
Definition CBLBase.h:41
@ kCBLPOSIXDomain
code is a POSIX errno; see "errno.h"
Definition CBLBase.h:39
@ kCBLMbedTLSDomain
code is an mbedTLS error.
Definition CBLBase.h:44
@ kCBLDomain
code is a Couchbase Lite error code; see CBLErrorCode
Definition CBLBase.h:38
@ kCBLSQLiteDomain
code is a SQLite error; see "sqlite3.h"
Definition CBLBase.h:40
@ kCBLNetworkDomain
code is a network error; see CBLNetworkErrorCode
Definition CBLBase.h:42
@ kCBLErrorTransactionNotClosed
Database can't be closed while a transaction is open.
Definition CBLBase.h:66
@ kCBLErrorCantUpgradeDatabase
Definition CBLBase.h:78
@ kCBLErrorNotOpen
Database/KeyStore/index is not open.
Definition CBLBase.h:54
@ kCBLErrorAssertionFailed
Internal assertion failure.
Definition CBLBase.h:49
@ kCBLErrorDatabaseTooNew
Database file format is newer than what I can open.
Definition CBLBase.h:76
@ kCBLErrorBusy
Database is busy/locked.
Definition CBLBase.h:64
@ kCBLErrorCrypto
Encryption/decryption error.
Definition CBLBase.h:70
@ kCBLErrorCorruptData
Data is corrupted.
Definition CBLBase.h:63
@ kCBLErrorRemoteError
Unknown error from remote server.
Definition CBLBase.h:74
@ kCBLErrorConflict
Document update conflict.
Definition CBLBase.h:56
@ kCBLErrorCorruptRevisionData
Revision contains corrupted/unreadable data.
Definition CBLBase.h:53
@ kCBLErrorUnexpectedError
Definition CBLBase.h:58
@ kCBLErrorBadDocID
Invalid document ID.
Definition CBLBase.h:77
@ kCBLErrorNotADatabaseFile
Definition CBLBase.h:68
@ kCBLErrorUnimplemented
Oops, an unimplemented API call.
Definition CBLBase.h:50
@ kCBLErrorNotFound
Document not found.
Definition CBLBase.h:55
@ kCBLErrorDatabaseTooOld
Database file format is older than what I can open.
Definition CBLBase.h:75
@ kCBLErrorMissingIndex
No such index, or query requires a nonexistent index.
Definition CBLBase.h:72
@ kCBLErrorCantOpenFile
Internal unexpected C++ exception.
Definition CBLBase.h:59
@ kCBLErrorBadRevisionID
Invalid revision ID syntax.
Definition CBLBase.h:52
@ kCBLErrorInvalidQuery
Invalid query.
Definition CBLBase.h:71
@ kCBLErrorInvalidQueryParam
Unknown query param name, or param number out of range.
Definition CBLBase.h:73
@ kCBLErrorIOError
File I/O error.
Definition CBLBase.h:60
@ kCBLErrorNotInTransaction
Function must be called while in a transaction.
Definition CBLBase.h:65
@ kCBLErrorMemoryError
Memory allocation failed (out of memory?)
Definition CBLBase.h:61
@ kCBLErrorUnsupportedEncryption
Unsupported encryption algorithm.
Definition CBLBase.h:51
@ kCBLErrorNotWriteable
File is not writeable.
Definition CBLBase.h:62
@ kCBLErrorInvalidParameter
Invalid function parameter or struct value.
Definition CBLBase.h:57
@ kCBLErrorUnsupported
Operation not supported in this database.
Definition CBLBase.h:67
@ kCBLErrorWrongFormat
File is not a database, or encryption key is wrong.
Definition CBLBase.h:69
struct CBLQueryIndex CBLQueryIndex
A query index.
Definition CBLBase.h:225
struct CBLIndexUpdater CBLIndexUpdater
Definition CBLBase.h:228
void CBLListener_Remove(CBLListenerToken *_cbl_nullable)
Removes a listener callback, given the token that was returned when it was added.
struct CBLListenerToken CBLListenerToken
An opaque 'cookie' representing a registered listener callback.
Definition CBLBase.h:284
int64_t CBLTimestamp
A date/time representation used for document expiration (and in date/time queries....
Definition CBLBase.h:124
CBLTimestamp CBL_Now(void)
Returns the current time, in milliseconds since 1/1/1970.
struct CBLQuery CBLQuery
A compiled database query.
Definition CBLBase.h:216
struct CBLResultSet CBLResultSet
An iterator over the rows resulting from running a query.
Definition CBLBase.h:219
struct CBLRefCounted CBLRefCounted
Definition CBLBase.h:151
void CBL_Release(CBLRefCounted *_cbl_nullable)
Decrements an object's reference-count, freeing the object if the count hits zero.
CBLRefCounted * CBL_Retain(CBLRefCounted *_cbl_nullable)
Increments an object's reference-count.
void CBL_DumpInstances(void)
Logs the class and address of each Couchbase Lite object.
unsigned CBL_InstanceCount(void)
Returns the total number of Couchbase Lite objects.
struct CBLReplicator CBLReplicator
A background task that syncs a CBLDatabase with a remote server or peer.
Definition CBLBase.h:235
struct CBLScope CBLScope
A collection's scope.
Definition CBLBase.h:189
A struct holding information about an error.
Definition CBLBase.h:105
int code
Error code, specific to the domain. 0 always means no error.
Definition CBLBase.h:107
CBLErrorDomain domain
Domain of errors; a namespace for the code.
Definition CBLBase.h:106
unsigned internal_info
Definition CBLBase.h:108
A heap-allocated block of memory returned from an API call.
Definition FLSlice.h:66