The neo4cl Reference Manual

This is the neo4cl Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Wed Mar 15 07:05:17 2023 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 neo4cl

Basic library for interacting with Neo4J

Author

James Fleming <>

License

Apache license 2.0

Dependencies
  • usocket (system).
  • trivial-utf-8 (system).
  • ieee-floats (system).
Source

neo4cl.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 neo4cl/neo4cl.asd

Source

neo4cl.asd.

Parent Component

neo4cl (system).

ASDF Systems

neo4cl.


3.1.2 neo4cl/package.lisp

Source

neo4cl.asd.

Parent Component

neo4cl (system).

Packages

neo4cl.


3.1.3 neo4cl/logging.lisp

Dependency

package.lisp (file).

Source

neo4cl.asd.

Parent Component

neo4cl (system).

Internals

3.1.4 neo4cl/conditions.lisp

Dependency

logging.lisp (file).

Source

neo4cl.asd.

Parent Component

neo4cl (system).

Public Interface
Internals

client-notification (condition).


3.1.5 neo4cl/binary-file.lisp

Dependency

conditions.lisp (file).

Source

neo4cl.asd.

Parent Component

neo4cl (system).

Internals

3.1.6 neo4cl/packstream-structures.lisp

Dependency

binary-file.lisp (file).

Source

neo4cl.asd.

Parent Component

neo4cl (system).

Public Interface
Internals

3.1.7 neo4cl/packstream-encoding.lisp

Dependency

packstream-structures.lisp (file).

Source

neo4cl.asd.

Parent Component

neo4cl (system).

Internals

3.1.8 neo4cl/packstream-decoding.lisp

Dependency

packstream-encoding.lisp (file).

Source

neo4cl.asd.

Parent Component

neo4cl (system).

Internals

3.1.9 neo4cl/bolt.lisp

Dependency

packstream-decoding.lisp (file).

Source

neo4cl.asd.

Parent Component

neo4cl (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 neo4cl

Source

package.lisp.

Use List

common-lisp.

Public Interface
Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Generic functions

Generic Function: bolt-transaction-autocommit (session query &key parameters)

Perform an autocommit transaction.
:parameters argument can be either an alist or a hash-table. alist is typically the low-overhead option, but it’ll break if any of the values are null.

Package

neo4cl.

Source

bolt.lisp.

Methods
Method: bolt-transaction-autocommit ((session bolt-session) (query string) &key parameters)
Generic Reader: category (condition)
Package

neo4cl.

Methods
Reader Method: category ((condition packstream-error))
Source

conditions.lisp.

Target Slot

category.

Reader Method: category ((condition bolt-error))
Source

conditions.lisp.

Target Slot

category.

Reader Method: category ((condition service-error))
Source

conditions.lisp.

Target Slot

category.

Reader Method: category ((condition database-error))
Source

conditions.lisp.

Target Slot

category.

Reader Method: category ((condition transient-error))
Source

conditions.lisp.

Target Slot

category.

Reader Method: category ((condition client-notification))
Source

conditions.lisp.

Target Slot

category.

Reader Method: category ((condition client-error))
Source

conditions.lisp.

Target Slot

category.

Generic Function: connect (server)

Create a connection to a Neo4j server
Return a 2-element list:
- usocket:stream-socket instance containing the TCP connection.
- bolt-protocol instance indicating the version of the Bolt protocol to use in this session.

Package

neo4cl.

Source

bolt.lisp.

Methods
Method: connect ((server bolt-server))
Generic Reader: connection (object)
Package

neo4cl.

Methods
Reader Method: connection ((bolt-session bolt-session))

The network connection object for this session.

Source

bolt.lisp.

Target Slot

connection.

Generic Reader: connection-id (object)
Package

neo4cl.

Methods
Reader Method: connection-id ((bolt-session bolt-session))

The connection ID supplied by the server in response to a Hello message.

Source

bolt.lisp.

Target Slot

connection-id.

Generic Function: disconnect (session)

Disconnect from the Neo4j server.

Package

neo4cl.

Source

bolt.lisp.

Methods
Method: disconnect ((session bolt-session))
Generic Reader: end-node-id (object)
Package

neo4cl.

Methods
Reader Method: end-node-id ((relationship relationship))

ID of the start-node for this relationship.

Source

packstream-structures.lisp.

Target Slot

end-node-id.

Generic Function: establish-bolt-session (server)

Connect to a Neo4j server, take care of all the handshaking, and return a bolt-session instance, containing everything we need henceforth.

Package

neo4cl.

Source

bolt.lisp.

Methods
Method: establish-bolt-session ((server bolt-server))
Generic Reader: hostname (object)
Package

neo4cl.

Methods
Reader Method: hostname ((bolt-server bolt-server))

The host on which Neo4j is listening. Default is localhost.

Source

bolt.lisp.

Target Slot

hostname.

Generic Reader: major-version (object)
Package

neo4cl.

Methods
Reader Method: major-version ((neo4j-version neo4j-version))

automatically generated reader method

Source

bolt.lisp.

Target Slot

major-version.

Reader Method: major-version ((bolt-protocol bolt-protocol))

automatically generated reader method

Source

bolt.lisp.

Target Slot

major-version.

Generic Reader: message (condition)
Package

neo4cl.

Methods
Reader Method: message ((condition packstream-error))
Source

conditions.lisp.

Target Slot

message.

Reader Method: message ((condition bolt-error))
Source

conditions.lisp.

Target Slot

message.

Reader Method: message ((condition service-error))
Source

conditions.lisp.

Target Slot

message.

Reader Method: message ((condition database-error))
Source

conditions.lisp.

Target Slot

message.

Reader Method: message ((condition transient-error))
Source

conditions.lisp.

Target Slot

message.

Reader Method: message ((condition client-notification))
Source

conditions.lisp.

Target Slot

message.

Reader Method: message ((condition client-error))
Source

conditions.lisp.

Target Slot

message.

Generic Reader: minor-version (object)
Package

neo4cl.

Methods
Reader Method: minor-version ((neo4j-version neo4j-version))

automatically generated reader method

Source

bolt.lisp.

Target Slot

minor-version.

Reader Method: minor-version ((bolt-protocol bolt-protocol))

automatically generated reader method

Source

bolt.lisp.

Target Slot

minor-version.

Generic Reader: neo4j-version (object)
Generic Writer: (setf neo4j-version) (object)
Package

neo4cl.

Methods
Reader Method: neo4j-version ((bolt-session bolt-session))
Writer Method: (setf neo4j-version) ((bolt-session bolt-session))

The version of the Neo4j database to which this session is connected. This is determined in a separate operation after the ‘handshake‘ method creates and initialises this object. Initial value should not be valid for any client use.

Source

bolt.lisp.

Target Slot

neo4j-version.

Generic Reader: node-id (object)
Package

neo4cl.

Methods
Reader Method: node-id ((node node))

Node identifier. Mostly useful for correlating with relationships.

Source

packstream-structures.lisp.

Target Slot

node-id.

Generic Reader: node-properties (object)
Package

neo4cl.

Methods
Reader Method: node-properties ((node node))

The node’s properties, as a hash-table.

Source

packstream-structures.lisp.

Target Slot

node-properties.

Generic Reader: port (object)
Package

neo4cl.

Methods
Reader Method: port ((bolt-server bolt-server))

The port-number on which Neo4j is listening. Default is 7687.

Source

bolt.lisp.

Target Slot

port.

Generic Reader: relationship-id (object)
Package

neo4cl.

Methods
Reader Method: relationship-id ((relationship relationship))

ID for the relationship.

Source

packstream-structures.lisp.

Target Slot

relationship-id.

Generic Reader: relationship-properties (object)
Package

neo4cl.

Methods
Reader Method: relationship-properties ((relationship relationship))

Properties recorded within this relationship

Source

packstream-structures.lisp.

Target Slot

relationship-properties.

Generic Reader: relationship-type (object)
Package

neo4cl.

Methods
Reader Method: relationship-type ((unbound-relationship unbound-relationship))

This is just called ‘type‘ in the spec, but this conflicts with a reserved word in CL.

Source

packstream-structures.lisp.

Target Slot

relationship-type.

Reader Method: relationship-type ((relationship relationship))

Neo4j type of this relationship.

Source

packstream-structures.lisp.

Target Slot

relationship-type.

Generic Reader: start-node-id (object)
Package

neo4cl.

Methods
Reader Method: start-node-id ((relationship relationship))

ID of the start-node for this relationship.

Source

packstream-structures.lisp.

Target Slot

start-node-id.

Generic Reader: title (condition)
Package

neo4cl.

Methods
Reader Method: title ((condition database-error))
Source

conditions.lisp.

Target Slot

title.

Reader Method: title ((condition transient-error))
Source

conditions.lisp.

Target Slot

title.

Reader Method: title ((condition client-notification))
Source

conditions.lisp.

Target Slot

title.

Reader Method: title ((condition client-error))
Source

conditions.lisp.

Target Slot

title.


5.1.2 Standalone methods

Reader Method: node-labels ((node node))

The node’s labels, represented as a list of strings.

Package

keyword.

Source

packstream-structures.lisp.

Target Slot

node-labels.


5.1.3 Conditions

Condition: bolt-error

The server reported an error relating to a Bolt session.

Package

neo4cl.

Source

conditions.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: category
Initargs

:category

Readers

category.

Writers

This slot is read-only.

Slot: message
Initargs

:message

Readers

message.

Writers

This slot is read-only.

Condition: client-error

The Client sent a bad request - changing the request might yield a successful outcome. Effect on transaction: rollback.

Package

neo4cl.

Source

conditions.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: category
Initargs

:category

Readers

category.

Writers

This slot is read-only.

Slot: title
Initargs

:title

Readers

title.

Writers

This slot is read-only.

Slot: message
Initargs

:message

Readers

message.

Writers

This slot is read-only.

Condition: database-error

The database failed to service the request. Effect on transaction: rollback.

Package

neo4cl.

Source

conditions.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: category
Initargs

:category

Readers

category.

Writers

This slot is read-only.

Slot: title
Initargs

:title

Readers

title.

Writers

This slot is read-only.

Slot: message
Initargs

:message

Readers

message.

Writers

This slot is read-only.

Condition: packstream-error

Some kind of issue relating to Packstream serialisation/deserialisation.

Package

neo4cl.

Source

conditions.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: category
Initargs

:category

Readers

category.

Writers

This slot is read-only.

Slot: message
Initargs

:message

Readers

message.

Writers

This slot is read-only.

Condition: service-error

Conditions _not_ reported from Neo4J, like connection refused

Package

neo4cl.

Source

conditions.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: category
Initargs

:category

Readers

category.

Writers

This slot is read-only.

Slot: message
Initargs

:message

Readers

message.

Writers

This slot is read-only.

Condition: transient-error

The database cannot service the request right now, retrying later might yield a successful outcome. Effect on transaction: rollback.

Package

neo4cl.

Source

conditions.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: category
Initargs

:category

Readers

category.

Writers

This slot is read-only.

Slot: title
Initargs

:title

Readers

title.

Writers

This slot is read-only.

Slot: message
Initargs

:message

Readers

message.

Writers

This slot is read-only.


5.1.4 Classes

Class: bolt-auth-basic

Authentication token for basic auth.

Package

neo4cl.

Source

bolt.lisp.

Direct superclasses

bolt-auth-token.

Direct methods
Direct slots
Slot: scheme

Indicates to the server that the ’basic’ authentication scheme is expected.

Initform

"basic"

Slot: username

The username with which we’re authenticating to the Neo4j server. Default is neo4j.

Type

string

Initform

"neo4j"

Initargs

:username

Readers

username.

Writers

This slot is read-only.

Slot: password

The password with which we’re authenticating to the Neo4j server. Default is neo4j.

Type

string

Initform

"neo4j"

Initargs

:password

Readers

password.

Writers

This slot is read-only.

Class: bolt-auth-none

Authentication token for the ’none’ authentication scheme.

Package

neo4cl.

Source

bolt.lisp.

Direct superclasses

bolt-auth-token.

Direct methods

username.

Direct slots
Slot: scheme

Indicates to the server that the ’none’ authentication scheme is requested.

Initform

"none"

Slot: username

The username with which we’re authenticating to the Neo4j server. Default is neo4j.

Type

string

Initform

"neo4j"

Initargs

:username

Readers

username.

Writers

This slot is read-only.

Class: bolt-protocol

Represents a version of the Bolt protocol. Subclasses are used for specialising methods according to the protocol version.
For more detail about the protocol itself, see https://7687.org/bolt/bolt-protocol-message-specification-4.html

Package

neo4cl.

Source

bolt.lisp.

Direct subclasses

bolt-protocol-4-3.

Direct methods
Direct slots
Slot: major-version
Type

integer

Allocation

:class

Initform

0

Readers

major-version.

Writers

This slot is read-only.

Slot: minor-version
Type

integer

Allocation

:class

Initform

0

Readers

minor-version.

Writers

This slot is read-only.

Class: bolt-protocol-4-3

Bolt protocol version 4.3

Package

neo4cl.

Source

bolt.lisp.

Direct superclasses

bolt-protocol.

Direct methods
Direct slots
Slot: major-version
Initform

4

Slot: minor-version
Initform

3

Class: bolt-server

A Neo4j speaker, using the Bolt protocol.

Package

neo4cl.

Source

bolt.lisp.

Direct methods
Direct slots
Slot: hostname

The host on which Neo4j is listening. Default is localhost.

Type

string

Initform

"localhost"

Initargs

:hostname

Readers

hostname.

Writers

This slot is read-only.

Slot: port

The port-number on which Neo4j is listening. Default is 7687.

Type

integer

Initform

7687

Initargs

:port

Readers

port.

Writers

This slot is read-only.

Slot: encryption

Whether the Neo4j server is using TLS encryption.

Type

boolean

Initargs

:encrypted

Readers

encrypted.

Writers

This slot is read-only.

Slot: timeout

The timeout on creating connections, in seconds.

Type

integer

Initform

20

Initargs

:timeout

Readers

timeout.

Writers

This slot is read-only.

Slot: auth-token

Authentication credentials.

Type

neo4cl::bolt-auth-token

Initform

(make-instance (quote neo4cl:bolt-auth-none) :username "neo4j")

Initargs

:auth-token

Readers

auth-token.

Writers

This slot is read-only.

Class: bolt-session

Composite object containing everything you need to know about this session.

Package

neo4cl.

Source

bolt.lisp.

Direct methods
Direct slots
Slot: connection

The network connection object for this session.

Type

usocket:stream-usocket

Initform

(error "connection attribute is mandatory.")

Initargs

:connection

Readers

connection.

Writers

This slot is read-only.

Slot: connection-id

The connection ID supplied by the server in response to a Hello message.

Type

string

Initform

""

Initargs

:connection-id

Readers

connection-id.

Writers

This slot is read-only.

Slot: bolt-version

The version of the Bolt protocol in effect for this session.

Type

neo4cl:bolt-protocol

Initform

(error "bolt-protocol-version attribute is mandatory.")

Initargs

:bolt-protocol-version

Readers

bolt-protocol-version.

Writers

This slot is read-only.

Slot: neo4j-version

The version of the Neo4j database to which this session is connected. This is determined in a separate operation after the ‘handshake‘ method creates and initialises this object. Initial value should not be valid for any client use.

Type

neo4cl:neo4j-version

Initform

(make-instance (quote neo4cl:neo4j-version))

Initargs

:neo4j-version

Readers

neo4j-version.

Writers

(setf neo4j-version).

Class: date

An instant capturing the date, but not the time, nor the time zone.

Package

neo4cl.

Source

packstream-structures.lisp.

Direct methods
Direct slots
Slot: days

Days since the Unix epoch

Type

integer

Initargs

:days

Readers

days.

Writers

This slot is read-only.

Class: datetime

An instant capturing the date, the time, and the time zone. The time zone information is specified with a zone offset.

Package

neo4cl.

Source

packstream-structures.lisp.

Direct methods
Direct slots
Slot: seconds

Seconds since the adjusted Unix epoch. This is not UTC.

Type

integer

Initargs

:seconds

Readers

seconds.

Writers

This slot is read-only.

Slot: nanoseconds
Type

integer

Initargs

:nanoseconds

Readers

nanoseconds.

Writers

This slot is read-only.

Slot: tz-offset-seconds

Offset in seconds from UTC.

Type

integer

Initargs

:tz-offset-seconds

Readers

tz-offset-seconds.

Writers

This slot is read-only.

Class: datetimezoneid

An instant capturing the date, the time, and the time zone. The time zone information is specified with a zone identifier.

Package

neo4cl.

Source

packstream-structures.lisp.

Direct methods
Direct slots
Slot: seconds

Seconds since the adjusted Unix epoch. This is not UTC.

Type

integer

Initargs

:seconds

Readers

seconds.

Writers

This slot is read-only.

Slot: nanoseconds
Type

integer

Initargs

:nanoseconds

Readers

nanoseconds.

Writers

This slot is read-only.

Slot: tz-id

Identifier for a specific time zone, such as ’Europe/Paris’.

Type

string

Initargs

:tz-id

Readers

tz-id.

Writers

This slot is read-only.

Class: duration

A temporal amount. This captures the difference in time between two instants. Can be negative.

Package

neo4cl.

Source

packstream-structures.lisp.

Direct methods
Direct slots
Slot: months
Type

integer

Initargs

:months

Readers

months.

Writers

This slot is read-only.

Slot: days
Type

integer

Initargs

:days

Readers

days.

Writers

This slot is read-only.

Slot: seconds
Type

integer

Initargs

:seconds

Readers

seconds.

Writers

This slot is read-only.

Slot: nanoseconds
Type

integer

Initargs

:nanoseconds

Readers

nanoseconds.

Writers

This slot is read-only.

Class: localdatetime

An instant capturing the date and the time, but not the time zone.

Package

neo4cl.

Source

packstream-structures.lisp.

Direct methods
Direct slots
Slot: seconds

Seconds since the Unix epoch.

Type

integer

Initargs

:seconds

Readers

seconds.

Writers

This slot is read-only.

Slot: nanoseconds
Type

integer

Initargs

:nanoseconds

Readers

nanoseconds.

Writers

This slot is read-only.

Class: localtime

An instant capturing the time of day, but not the date, nor the time zone.

Package

neo4cl.

Source

packstream-structures.lisp.

Direct methods
Direct slots
Slot: nanoseconds

Nanoseconds since midnight.

Type

integer

Initargs

:nanoseconds

Readers

nanoseconds.

Writers

This slot is read-only.

Class: neo4j-4-3-9

Neo4j version 4.3.9

Package

neo4cl.

Source

bolt.lisp.

Direct superclasses

neo4j-version.

Direct slots
Slot: major-version
Initform

4

Slot: minor-version
Initform

3

Slot: patch-release
Initform

9

Class: neo4j-version

Represents a version of the Neo4j database. Subclasses are used for specialising client methods according to the database version.

Package

neo4cl.

Source

bolt.lisp.

Direct subclasses

neo4j-4-3-9.

Direct methods
Direct slots
Slot: major-version
Type

integer

Allocation

:class

Initform

0

Readers

major-version.

Writers

This slot is read-only.

Slot: minor-version
Type

integer

Allocation

:class

Initform

0

Readers

minor-version.

Writers

This slot is read-only.

Slot: patch-release
Type

integer

Allocation

:class

Initform

0

Readers

patch-release.

Writers

This slot is read-only.

Class: node

Snapshot of a node within a graph database

Package

neo4cl.

Source

packstream-structures.lisp.

Direct methods
Direct slots
Slot: node-id

Node identifier. Mostly useful for correlating with relationships.

Type

integer

Initargs

:node-id

Readers

node-id.

Writers

This slot is read-only.

Slot: node-labels

The node’s labels, represented as a list of strings.

Type

list

Initargs

:node-labels

Readers

node-labels.

Writers

This slot is read-only.

Slot: node-properties

The node’s properties, as a hash-table.

Type

hash-table

Initargs

:node-properties

Readers

node-properties.

Writers

This slot is read-only.

Class: path

Represents a path between nodes.

Package

neo4cl.

Source

packstream-structures.lisp.

Direct methods
Direct slots
Slot: nodes

List of ‘node‘ objects.

Type

list

Initargs

:nodes

Readers

nodes.

Writers

This slot is read-only.

Slot: rels

List of unbound-relationship objects.

Type

list

Initargs

:rels

Readers

rels.

Writers

This slot is read-only.

Slot: indices

List of integers describing how to construct the path from nodes and rels.

Type

list

Initargs

:indices

Readers

indices.

Writers

This slot is read-only.

Class: point2d

Represents a single location in 2-dimensional space.

Package

neo4cl.

Source

packstream-structures.lisp.

Direct methods
Direct slots
Slot: srid

A Spatial Reference System IDentifier.

Type

integer

Initargs

:srid

Readers

srid.

Writers

This slot is read-only.

Slot: x
Type

float

Initargs

:x

Readers

x.

Writers

This slot is read-only.

Slot: y
Type

float

Initargs

:y

Readers

y.

Writers

This slot is read-only.

Class: point3d

Represents a single location in 3-dimensional space.

Package

neo4cl.

Source

packstream-structures.lisp.

Direct methods
Direct slots
Slot: srid

A Spatial Reference System IDentifier.

Type

integer

Initargs

:srid

Readers

srid.

Writers

This slot is read-only.

Slot: x
Type

float

Initargs

:x

Readers

x.

Writers

This slot is read-only.

Slot: y
Type

float

Initargs

:y

Readers

y.

Writers

This slot is read-only.

Slot: z
Type

float

Initargs

:z

Readers

z.

Writers

This slot is read-only.

Class: relationship

Snapshot of a relationship within a graph database

Package

neo4cl.

Source

packstream-structures.lisp.

Direct methods
Direct slots
Slot: relationship-id

ID for the relationship.

Type

integer

Initargs

:relationship-id

Readers

relationship-id.

Writers

This slot is read-only.

Slot: start-node-id

ID of the start-node for this relationship.

Type

integer

Initargs

:start-node-id

Readers

start-node-id.

Writers

This slot is read-only.

Slot: end-node-id

ID of the start-node for this relationship.

Type

integer

Initargs

:end-node-id

Readers

end-node-id.

Writers

This slot is read-only.

Slot: relationship-type

Neo4j type of this relationship.

Type

string

Initargs

:relationship-type

Readers

relationship-type.

Writers

This slot is read-only.

Slot: relationship-properties

Properties recorded within this relationship

Type

hash-table

Initargs

:relationship-properties

Readers

relationship-properties.

Writers

This slot is read-only.

Class: timestructure

An instant capturing the time of day, and the timezone, but not the date. Named ‘time‘ in the spec, but this conflicts with a reserved word in CL.

Package

neo4cl.

Source

packstream-structures.lisp.

Direct methods
Direct slots
Slot: nanoseconds

Nanoseconds since midnight. This time is not UTC.

Type

integer

Initargs

:nanoseconds

Readers

nanoseconds.

Writers

This slot is read-only.

Slot: tz-offset-seconds

Offset in seconds from UTC.

Type

integer

Initargs

:tz-offset-seconds

Readers

tz-offset-seconds.

Writers

This slot is read-only.

Class: unbound-relationship

A relationship without information of start and end node id. It is used internally for Path serialization.

Package

neo4cl.

Source

packstream-structures.lisp.

Direct methods
Direct slots
Slot: id
Type

integer

Initargs

:id

Readers

id.

Writers

This slot is read-only.

Slot: relationship-type

This is just called ‘type‘ in the spec, but this conflicts with a reserved word in CL.

Type

string

Initargs

:relationship-type

Readers

relationship-type.

Writers

This slot is read-only.

Slot: properties

The documented type is Dictionary, so it’s represented here as a hash-table.

Type

hash-table

Initargs

:properties

Readers

properties.

Writers

This slot is read-only.


5.2 Internals


5.2.1 Constants

Constant: +bolt-begin+
Package

neo4cl.

Source

bolt.lisp.

Constant: +bolt-commit+
Package

neo4cl.

Source

bolt.lisp.

Constant: +bolt-discard+
Package

neo4cl.

Source

bolt.lisp.

Constant: +bolt-failure+
Package

neo4cl.

Source

bolt.lisp.

Constant: +bolt-goodbye+
Package

neo4cl.

Source

bolt.lisp.

Constant: +bolt-hello+
Package

neo4cl.

Source

bolt.lisp.

Constant: +bolt-ignored+
Package

neo4cl.

Source

bolt.lisp.

Constant: +bolt-pull+
Package

neo4cl.

Source

bolt.lisp.

Constant: +bolt-record+
Package

neo4cl.

Source

bolt.lisp.

Constant: +bolt-reset+
Package

neo4cl.

Source

bolt.lisp.

Constant: +bolt-rollback+
Package

neo4cl.

Source

bolt.lisp.

Constant: +bolt-route+
Package

neo4cl.

Source

bolt.lisp.

Constant: +bolt-run+
Package

neo4cl.

Source

bolt.lisp.

Constant: +bolt-success+
Package

neo4cl.

Source

bolt.lisp.

Constant: +packstream-false+
Package

neo4cl.

Source

packstream-structures.lisp.

Constant: +packstream-null+
Package

neo4cl.

Source

packstream-structures.lisp.

Constant: +packstream-true+
Package

neo4cl.

Source

packstream-structures.lisp.


5.2.2 Special variables

Special Variable: *log-stream*
Package

neo4cl.

Source

logging.lisp.

Special Variable: *loglevel*
Package

neo4cl.

Source

logging.lisp.

Special Variable: *loglevels*
Package

neo4cl.

Source

logging.lisp.

Special Variable: +bolt-announce-protocol+
Package

neo4cl.

Source

bolt.lisp.

Special Variable: +bolt-termination-chunk+
Package

neo4cl.

Source

bolt.lisp.


5.2.3 Ordinary functions

Function: alist-p (lst)

Check whether the argument is actually an alist.

Package

neo4cl.

Source

packstream-encoding.lisp.

Function: bolt-pull (session)

Send a PULL message to the server.

Package

neo4cl.

Source

bolt.lisp.

Function: decode-dictionary (vec offset)

Parse a Dictionary structure from a byte-vector, given its starting offset.
Return 3 values:
- hash-table: the Dictionary contents. Keys are always strings, so the test is #’equal.
- integer: the number of bytes the dict occupies in the vector, _excluding_ its header.
- integer: number of bytes the header occupies in the vector.
It’s an alist because the Packstream spec states that a Dictionary can contain multiple instances of the same key; an alist can accommodate this, but a hash-table can’t.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: decode-element (vec offset)

General dispatcher for parsing a Packstream element, given a vector of octets and the starting offset. Returns a 3-element list:
- the parsed object, as whatever CL type is most applicable.
- integer: the number of octets in the vector occupied by the element itself.
- integer: the number of octets occupied by the element’s marker.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: decode-int (vec offset)

Parse an integer from the vector, using the starting offset to find it. Return a 3-element list:
- integer: the number itself.
- integer: the number of octets in the vector occupied by the integer. - integer: the number of octets occupied by the header.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: decode-list (vec offset)

Parse a list from the vector, using the starting offset to find it. Return 3 values:
- list the list itself.
- integer: the number of octets in the vector occupied by the list. - integer: the number of octets occupied by the header.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: decode-string (vec offset)

Parse a string from the vector, using the starting offset to find it.
Return 3 values:
- string: the string itself
- integer: the number of octets in the vector occupied by the string.
- integer: the number of octets occupied by the header.
It’s true that you could get the number of octets via ‘length‘, but I’m including this here for consistency with the rest of the decode-<type> functions. This avoids the need to keep track of different return values for different types.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: decode-structure (vec offset)

Unpack a structure. Returns a 3-element list:
- A 1-dimensional array, with an element in that dimension for each field in the structure. - integer: the number of octets in the vector occupied by the element itself.
- integer: the number of octets occupied by the element’s marker.
Note that this function assumes <16 fields, because v1 of the Packstream spec doesn’t define a marker byte for larger structures.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: encode-alist (lst)

Packstream type: Dictionary.
Assumes a proper alist, in which the car of each pair is a string.

Package

neo4cl.

Source

packstream-encoding.lisp.

Function: encode-boolean (bool)

Return a vector containing a Packstream Boolean.
:true evaluates to true, and :false evaluates to false. Otherwise, the argument will be evaluated as a normal boolean.

Package

neo4cl.

Source

packstream-encoding.lisp.

Function: encode-float (num)

Encode floating-point numbers into 64-bit binary format, per IEEE 754.

Package

neo4cl.

Source

packstream-encoding.lisp.

Function: encode-hash-table (hash)

Packstream type: Dictionary.

Package

neo4cl.

Source

packstream-encoding.lisp.

Function: encode-integer (int)

Encode an integer into a vector containing a packstream Int.

Package

neo4cl.

Source

packstream-encoding.lisp.

Function: encode-list (lst)

Packstream type: List.

Package

neo4cl.

Source

packstream-encoding.lisp.

Function: encode-null ()

Return a vector containing a Packstream Null.

Package

neo4cl.

Source

packstream-encoding.lisp.

Function: encode-string (str)

Packstream type: String. Description: unicode text, UTF-8

Package

neo4cl.

Source

packstream-encoding.lisp.

Function: get-element-length (vec offset mtiny m8 m16 m32)

Parse the 1/2/3-octet marker in a vector, using the offset to locate the start of the marker. Return a 2-element list:
- integer: length of the element.
- integer: marker-length.
By calculating and returning the marker’s length here, we avoid the need for the client function to derive it after the fact, from the element itself.
Arguments:
- Vector of unsigned-byte octets.
- Starting position of the marker within the vector.
- Upper nibble for identifying 8-bit length markers.
- Octet for identifying 16-bit markers, in #xnn hexadecimal format.
- Octet for identifying 32 markers, in #xnn hexadecimal format.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: get-list-length (vec offset)

Convenience function, wrapped around get-element-length.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: get-string-length (vec offset)

Convenience function, wrapped around get-element-length.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: identify-marker (marker)

What kind of thing does this marker denote? Returns a string with its name.
Doesn’t provide any details about how to handle it, just what *kind* of thing it is, so we can decide what to do next.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: identify-structure-node (tag)

What kind of structure is this? Return its name as a string.
Note that each tag-byte corresponds to an ASCII character hinting at the name.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: int-bytes (int bytes)

Returns bytes from given (positive) integer least significant byte first.

Package

neo4cl.

Source

binary-file.lisp.

Function: integer-to-bytes (value &optional bytes marker)

Transform an integer into a list of 8-bit unsigned bytes. Intended for use with negative integers.
The ‘bytes‘ argument is the number of octets in the output vector, so for a 16-bit number you should specify 2.
The ‘marker‘ argument should be one of #xc8, #xc9, #xca or #xcb. Heavily inspired by cl-binary-file:write-integer.

Package

neo4cl.

Source

packstream-encoding.lisp.

Function: log-message (severity message)
Package

neo4cl.

Source

logging.lisp.

Function: make-timestamp ()
Package

neo4cl.

Source

logging.lisp.

Function: read-float (vec offset)

Parse an integer from the vector, using the starting offset to find it.
The non-pattern name is due to a collision with the standard function ‘decode-float‘. - float the float itself
- integer: the number of octets in the vector occupied by the string.
- integer: the number of octets occupied by the header.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: read-signed-integer (vec offset &optional bytes)

Reads and returns signed integer from a vector of octets.
‘offset‘ is the start of the integer, not its marker.
‘bytes‘ is the number of octets used for encoding the number, e.g. 2 means a 16-bit integer. Heavily inspired by cl-binary-file:read-integer.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: read-tx-responses (session &key messages)

Digest the output of read-bolt-messages-from-stream (plural version), which should be a list of vectors. Return a list of lists, each representing a row of data, plus an alist of metadata.
Expects its client function to have already sent a PULL message.

Package

neo4cl.

Source

bolt.lisp.

Function: twos-complement (value bytes)

Returns two’s complement of given value. Bytes is size of value in bytes.

Package

neo4cl.

Source

binary-file.lisp.

Function: twos-complement-signed (value bytes)

Returns signed integer. Value is in two’s complement format and result has bytes * 8 bits.

Package

neo4cl.

Source

binary-file.lisp.

Function: vector-to-date (arr)

Take a 1-field array, and return a ’date instance.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: vector-to-datetime (arr)

Take a 3-field array, and return a ’datetime instance.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: vector-to-datetimezoneid (arr)

Take a 3-field array, and return a ’datetimezoneid instance.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: vector-to-duration (arr)

Take a 4-field array, and return a ’duration instance.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: vector-to-localdatetime (arr)

Take a 2-field array, and return a ’localdatetime instance.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: vector-to-localtime (arr)

Take a 1-field array, and return a ’localtime instance.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: vector-to-node (arr)

Take a 3-element array, and return a ’node instance.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: vector-to-point2d (arr)

Take a 3-field array, and return a ’point2d instance.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: vector-to-point3d (arr)

Take a 4-field array, and return a ’point3d instance.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: vector-to-relationship (arr)

Take a 5-field array, and return a ’relationship instance.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: vector-to-time (arr)

Take a 2-field array, and return a ’timestructure instance.

Package

neo4cl.

Source

packstream-decoding.lisp.

Function: vectorise-list (lst)

Take a list of values, and concatenate them all into a single vector.
Beware: uses recursion, so excessively long lists run the risk of blowing the stack.

Package

neo4cl.

Source

packstream-encoding.lisp.


5.2.4 Generic functions

Generic Function: add-auth-to-extra (token hash)

Add the details from this authentication token to that ’extras’ hash-table.

Package

neo4cl.

Source

bolt.lisp.

Methods
Method: add-auth-to-extra ((token bolt-auth-basic) (hash hash-table))
Method: add-auth-to-extra ((token bolt-auth-token) (hash hash-table))
Generic Reader: auth-token (object)
Package

neo4cl.

Methods
Reader Method: auth-token ((bolt-server bolt-server))

Authentication credentials.

Source

bolt.lisp.

Target Slot

auth-token.

Generic Function: bolt-hello (connection protocol auth-token)

Connect to the Neo4j server, authenticate, and ascertain the server version.
Return a bolt-session instance, which contains the connection, the bolt version and the Neo4j version.

Package

neo4cl.

Source

bolt.lisp.

Methods
Method: bolt-hello ((connection stream-usocket) (protocol bolt-protocol-4-3) (auth-token bolt-auth-token))

Hello method specialised on Bolt v4.3.
For details, see https://7687.org/bolt/bolt-protocol-message-specification-4.html#version-43

Generic Reader: bolt-protocol-version (object)
Package

neo4cl.

Methods
Reader Method: bolt-protocol-version ((bolt-session bolt-session))

The version of the Bolt protocol in effect for this session.

Source

bolt.lisp.

Target Slot

bolt-version.

Generic Reader: days (object)
Package

neo4cl.

Methods
Reader Method: days ((duration duration))

automatically generated reader method

Source

packstream-structures.lisp.

Target Slot

days.

Reader Method: days ((date date))

Days since the Unix epoch

Source

packstream-structures.lisp.

Target Slot

days.

Generic Function: encode-element (element)

Encode a thing into Packstream format. Note that an empty list will be encoded as Null, not as a zero-element list.

Package

neo4cl.

Source

packstream-encoding.lisp.

Methods
Method: encode-element ((element point3d))
Method: encode-element ((element point2d))
Method: encode-element ((element duration))
Method: encode-element ((element localdatetime))
Method: encode-element ((element datetimezoneid))
Method: encode-element ((element datetime))
Method: encode-element ((element localtime))
Method: encode-element ((element timestructure))
Method: encode-element ((element date))
Method: encode-element ((element list))
Method: encode-element ((element hash-table))
Method: encode-element ((element string))
Method: encode-element ((element float))
Method: encode-element ((element double-float))
Method: encode-element ((element integer))
Method: encode-element ((element (eql :false)))
Method: encode-element ((element (eql :true)))
Method: encode-element ((element (eql :null)))
Generic Reader: encrypted (object)
Package

neo4cl.

Methods
Reader Method: encrypted ((bolt-server bolt-server))

Whether the Neo4j server is using TLS encryption.

Source

bolt.lisp.

Target Slot

encryption.

Generic Reader: id (object)
Package

neo4cl.

Methods
Reader Method: id ((unbound-relationship unbound-relationship))

automatically generated reader method

Source

packstream-structures.lisp.

Target Slot

id.

Generic Reader: indices (object)
Package

neo4cl.

Methods
Reader Method: indices ((path path))

List of integers describing how to construct the path from nodes and rels.

Source

packstream-structures.lisp.

Target Slot

indices.

Generic Reader: months (object)
Package

neo4cl.

Methods
Reader Method: months ((duration duration))

automatically generated reader method

Source

packstream-structures.lisp.

Target Slot

months.

Generic Reader: nanoseconds (object)
Package

neo4cl.

Methods
Reader Method: nanoseconds ((duration duration))

automatically generated reader method

Source

packstream-structures.lisp.

Target Slot

nanoseconds.

Reader Method: nanoseconds ((localdatetime localdatetime))

automatically generated reader method

Source

packstream-structures.lisp.

Target Slot

nanoseconds.

Reader Method: nanoseconds ((datetimezoneid datetimezoneid))

automatically generated reader method

Source

packstream-structures.lisp.

Target Slot

nanoseconds.

Reader Method: nanoseconds ((datetime datetime))

automatically generated reader method

Source

packstream-structures.lisp.

Target Slot

nanoseconds.

Reader Method: nanoseconds ((localtime localtime))

Nanoseconds since midnight.

Source

packstream-structures.lisp.

Target Slot

nanoseconds.

Reader Method: nanoseconds ((timestructure timestructure))

Nanoseconds since midnight. This time is not UTC.

Source

packstream-structures.lisp.

Target Slot

nanoseconds.

Generic Reader: nodes (object)
Package

neo4cl.

Methods
Reader Method: nodes ((path path))

List of ‘node‘ objects.

Source

packstream-structures.lisp.

Target Slot

nodes.

Generic Function: parse-autocommit-tx-response (instream protocol-version)

Process the server’s response to a RUN message requesting an auto-commit transaction. On success, returns an alist with two elements:
- fields (List<String>) = list of field names to expect in the return result.
- t_first (Integer) = time in ms until the first record will be available.

Package

neo4cl.

Source

bolt.lisp.

Methods
Method: parse-autocommit-tx-response ((instream stream-usocket) (protocol-version bolt-protocol-4-3))
Generic Function: parse-server-hello (instream protocol-version)

Process the server’s response to a HELLO message.
More of a helper function, wrapped around parse-bolt-hello

Package

neo4cl.

Source

bolt.lisp.

Methods
Method: parse-server-hello ((instream stream-usocket) (protocol-version bolt-protocol-4-3))
Generic Reader: password (object)
Package

neo4cl.

Methods
Reader Method: password ((bolt-auth-basic bolt-auth-basic))

The password with which we’re authenticating to the Neo4j server. Default is neo4j.

Source

bolt.lisp.

Target Slot

password.

Generic Reader: patch-release (object)
Package

neo4cl.

Methods
Reader Method: patch-release ((neo4j-version neo4j-version))

automatically generated reader method

Source

bolt.lisp.

Target Slot

patch-release.

Generic Reader: properties (object)
Package

neo4cl.

Methods
Reader Method: properties ((unbound-relationship unbound-relationship))

The documented type is Dictionary, so it’s represented here as a hash-table.

Source

packstream-structures.lisp.

Target Slot

properties.

Generic Function: read-bolt-chunk-from-stream (connection protocol)

Read a single Bolt chunk from the stream.
If length is >0, return a 1-dimention array of type (unsigned-byte 8). If its length is 0, i.e. it’s an end-of-message chunk, return nil.

Package

neo4cl.

Source

bolt.lisp.

Methods
Method: read-bolt-chunk-from-stream ((connection stream) (protocol bolt-protocol))
Generic Function: read-bolt-message-from-stream (connection protocol &optional acc)

Read a bolt message from the connection stream, and return a vector of octets for parsing.
Expects to receive a stream, so if you’re handling a usocket:stream-usocket object, you’ll need to pass it the value of (usocket:socket-stream obj).

Package

neo4cl.

Source

bolt.lisp.

Methods
Method: read-bolt-message-from-stream ((connection stream) (protocol bolt-protocol) &optional acc)
Generic Reader: rels (object)
Package

neo4cl.

Methods
Reader Method: rels ((path path))

List of unbound-relationship objects.

Source

packstream-structures.lisp.

Target Slot

rels.

Generic Reader: scheme (object)
Package

neo4cl.

Methods
Reader Method: scheme ((bolt-auth-token bolt-auth-token))

automatically generated reader method

Source

bolt.lisp.

Target Slot

scheme.

Generic Reader: seconds (object)
Package

neo4cl.

Methods
Reader Method: seconds ((duration duration))

automatically generated reader method

Source

packstream-structures.lisp.

Target Slot

seconds.

Reader Method: seconds ((localdatetime localdatetime))

Seconds since the Unix epoch.

Source

packstream-structures.lisp.

Target Slot

seconds.

Reader Method: seconds ((datetimezoneid datetimezoneid))

Seconds since the adjusted Unix epoch. This is not UTC.

Source

packstream-structures.lisp.

Target Slot

seconds.

Reader Method: seconds ((datetime datetime))

Seconds since the adjusted Unix epoch. This is not UTC.

Source

packstream-structures.lisp.

Target Slot

seconds.

Generic Function: send-packstream (connection protocol data)

Send Packstream data to a Bolt server.

Package

neo4cl.

Source

bolt.lisp.

Methods
Method: send-packstream ((connection stream-usocket) (protocol bolt-protocol) (data list))

Accept data in the form of a list of vectors.

Generic Reader: srid (object)
Package

neo4cl.

Methods
Reader Method: srid ((point3d point3d))

A Spatial Reference System IDentifier.

Source

packstream-structures.lisp.

Target Slot

srid.

Reader Method: srid ((point2d point2d))

A Spatial Reference System IDentifier.

Source

packstream-structures.lisp.

Target Slot

srid.

Generic Reader: timeout (object)
Package

neo4cl.

Methods
Reader Method: timeout ((bolt-server bolt-server))

The timeout on creating connections, in seconds.

Source

bolt.lisp.

Target Slot

timeout.

Generic Reader: tz-id (object)
Package

neo4cl.

Methods
Reader Method: tz-id ((datetimezoneid datetimezoneid))

Identifier for a specific time zone, such as ’Europe/Paris’.

Source

packstream-structures.lisp.

Target Slot

tz-id.

Generic Reader: tz-offset-seconds (object)
Package

neo4cl.

Methods
Reader Method: tz-offset-seconds ((datetime datetime))

Offset in seconds from UTC.

Source

packstream-structures.lisp.

Target Slot

tz-offset-seconds.

Reader Method: tz-offset-seconds ((timestructure timestructure))

Offset in seconds from UTC.

Source

packstream-structures.lisp.

Target Slot

tz-offset-seconds.

Generic Reader: username (object)
Package

neo4cl.

Methods
Reader Method: username ((bolt-auth-basic bolt-auth-basic))

The username with which we’re authenticating to the Neo4j server. Default is neo4j.

Source

bolt.lisp.

Target Slot

username.

Reader Method: username ((bolt-auth-none bolt-auth-none))

The username with which we’re authenticating to the Neo4j server. Default is neo4j.

Source

bolt.lisp.

Target Slot

username.

Generic Reader: x (object)
Package

neo4cl.

Methods
Reader Method: x ((point3d point3d))

automatically generated reader method

Source

packstream-structures.lisp.

Target Slot

x.

Reader Method: x ((point2d point2d))

automatically generated reader method

Source

packstream-structures.lisp.

Target Slot

x.

Generic Reader: y (object)
Package

neo4cl.

Methods
Reader Method: y ((point3d point3d))

automatically generated reader method

Source

packstream-structures.lisp.

Target Slot

y.

Reader Method: y ((point2d point2d))

automatically generated reader method

Source

packstream-structures.lisp.

Target Slot

y.

Generic Reader: z (object)
Package

neo4cl.

Methods
Reader Method: z ((point3d point3d))

automatically generated reader method

Source

packstream-structures.lisp.

Target Slot

z.


5.2.5 Conditions

Condition: client-notification

There are notifications about the request sent by the client. Effect on transaction: none.

Package

neo4cl.

Source

conditions.lisp.

Direct superclasses

condition.

Direct methods
Direct slots
Slot: category
Initargs

:category

Readers

category.

Writers

This slot is read-only.

Slot: title
Initargs

:title

Readers

title.

Writers

This slot is read-only.

Slot: message
Initargs

:message

Readers

message.

Writers

This slot is read-only.


5.2.6 Classes

Class: bolt-auth-token

Parent class for authentication tokens, to be subclassed for each auth scheme.

Package

neo4cl.

Source

bolt.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: scheme
Type

string

Allocation

:class

Initform

"undefined"

Readers

scheme.

Writers

This slot is read-only.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   (  
A   B   C   D   E   F   G   H   I   L   M   N   P   R   S   T   U   V   X   Y   Z  
Index Entry  Section

(
(setf neo4j-version): Public generic functions
(setf neo4j-version): Public generic functions

A
add-auth-to-extra: Private generic functions
add-auth-to-extra: Private generic functions
add-auth-to-extra: Private generic functions
alist-p: Private ordinary functions
auth-token: Private generic functions
auth-token: Private generic functions

B
bolt-hello: Private generic functions
bolt-hello: Private generic functions
bolt-protocol-version: Private generic functions
bolt-protocol-version: Private generic functions
bolt-pull: Private ordinary functions
bolt-transaction-autocommit: Public generic functions
bolt-transaction-autocommit: Public generic functions

C
category: Public generic functions
category: Public generic functions
category: Public generic functions
category: Public generic functions
category: Public generic functions
category: Public generic functions
category: Public generic functions
category: Public generic functions
connect: Public generic functions
connect: Public generic functions
connection: Public generic functions
connection: Public generic functions
connection-id: Public generic functions
connection-id: Public generic functions

D
days: Private generic functions
days: Private generic functions
days: Private generic functions
decode-dictionary: Private ordinary functions
decode-element: Private ordinary functions
decode-int: Private ordinary functions
decode-list: Private ordinary functions
decode-string: Private ordinary functions
decode-structure: Private ordinary functions
disconnect: Public generic functions
disconnect: Public generic functions

E
encode-alist: Private ordinary functions
encode-boolean: Private ordinary functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-element: Private generic functions
encode-float: Private ordinary functions
encode-hash-table: Private ordinary functions
encode-integer: Private ordinary functions
encode-list: Private ordinary functions
encode-null: Private ordinary functions
encode-string: Private ordinary functions
encrypted: Private generic functions
encrypted: Private generic functions
end-node-id: Public generic functions
end-node-id: Public generic functions
establish-bolt-session: Public generic functions
establish-bolt-session: Public generic functions

F
Function, alist-p: Private ordinary functions
Function, bolt-pull: Private ordinary functions
Function, decode-dictionary: Private ordinary functions
Function, decode-element: Private ordinary functions
Function, decode-int: Private ordinary functions
Function, decode-list: Private ordinary functions
Function, decode-string: Private ordinary functions
Function, decode-structure: Private ordinary functions
Function, encode-alist: Private ordinary functions
Function, encode-boolean: Private ordinary functions
Function, encode-float: Private ordinary functions
Function, encode-hash-table: Private ordinary functions
Function, encode-integer: Private ordinary functions
Function, encode-list: Private ordinary functions
Function, encode-null: Private ordinary functions
Function, encode-string: Private ordinary functions
Function, get-element-length: Private ordinary functions
Function, get-list-length: Private ordinary functions
Function, get-string-length: Private ordinary functions
Function, identify-marker: Private ordinary functions
Function, identify-structure-node: Private ordinary functions
Function, int-bytes: Private ordinary functions
Function, integer-to-bytes: Private ordinary functions
Function, log-message: Private ordinary functions
Function, make-timestamp: Private ordinary functions
Function, read-float: Private ordinary functions
Function, read-signed-integer: Private ordinary functions
Function, read-tx-responses: Private ordinary functions
Function, twos-complement: Private ordinary functions
Function, twos-complement-signed: Private ordinary functions
Function, vector-to-date: Private ordinary functions
Function, vector-to-datetime: Private ordinary functions
Function, vector-to-datetimezoneid: Private ordinary functions
Function, vector-to-duration: Private ordinary functions
Function, vector-to-localdatetime: Private ordinary functions
Function, vector-to-localtime: Private ordinary functions
Function, vector-to-node: Private ordinary functions
Function, vector-to-point2d: Private ordinary functions
Function, vector-to-point3d: Private ordinary functions
Function, vector-to-relationship: Private ordinary functions
Function, vector-to-time: Private ordinary functions
Function, vectorise-list: Private ordinary functions

G
Generic Function, (setf neo4j-version): Public generic functions
Generic Function, add-auth-to-extra: Private generic functions
Generic Function, auth-token: Private generic functions
Generic Function, bolt-hello: Private generic functions
Generic Function, bolt-protocol-version: Private generic functions
Generic Function, bolt-transaction-autocommit: Public generic functions
Generic Function, category: Public generic functions
Generic Function, connect: Public generic functions
Generic Function, connection: Public generic functions
Generic Function, connection-id: Public generic functions
Generic Function, days: Private generic functions
Generic Function, disconnect: Public generic functions
Generic Function, encode-element: Private generic functions
Generic Function, encrypted: Private generic functions
Generic Function, end-node-id: Public generic functions
Generic Function, establish-bolt-session: Public generic functions
Generic Function, hostname: Public generic functions
Generic Function, id: Private generic functions
Generic Function, indices: Private generic functions
Generic Function, major-version: Public generic functions
Generic Function, message: Public generic functions
Generic Function, minor-version: Public generic functions
Generic Function, months: Private generic functions
Generic Function, nanoseconds: Private generic functions
Generic Function, neo4j-version: Public generic functions
Generic Function, node-id: Public generic functions
Generic Function, node-properties: Public generic functions
Generic Function, nodes: Private generic functions
Generic Function, parse-autocommit-tx-response: Private generic functions
Generic Function, parse-server-hello: Private generic functions
Generic Function, password: Private generic functions
Generic Function, patch-release: Private generic functions
Generic Function, port: Public generic functions
Generic Function, properties: Private generic functions
Generic Function, read-bolt-chunk-from-stream: Private generic functions
Generic Function, read-bolt-message-from-stream: Private generic functions
Generic Function, relationship-id: Public generic functions
Generic Function, relationship-properties: Public generic functions
Generic Function, relationship-type: Public generic functions
Generic Function, rels: Private generic functions
Generic Function, scheme: Private generic functions
Generic Function, seconds: Private generic functions
Generic Function, send-packstream: Private generic functions
Generic Function, srid: Private generic functions
Generic Function, start-node-id: Public generic functions
Generic Function, timeout: Private generic functions
Generic Function, title: Public generic functions
Generic Function, tz-id: Private generic functions
Generic Function, tz-offset-seconds: Private generic functions
Generic Function, username: Private generic functions
Generic Function, x: Private generic functions
Generic Function, y: Private generic functions
Generic Function, z: Private generic functions
get-element-length: Private ordinary functions
get-list-length: Private ordinary functions
get-string-length: Private ordinary functions

H
hostname: Public generic functions
hostname: Public generic functions

I
id: Private generic functions
id: Private generic functions
identify-marker: Private ordinary functions
identify-structure-node: Private ordinary functions
indices: Private generic functions
indices: Private generic functions
int-bytes: Private ordinary functions
integer-to-bytes: Private ordinary functions

L
log-message: Private ordinary functions

M
major-version: Public generic functions
major-version: Public generic functions
major-version: Public generic functions
make-timestamp: Private ordinary functions
message: Public generic functions
message: Public generic functions
message: Public generic functions
message: Public generic functions
message: Public generic functions
message: Public generic functions
message: Public generic functions
message: Public generic functions
Method, (setf neo4j-version): Public generic functions
Method, add-auth-to-extra: Private generic functions
Method, add-auth-to-extra: Private generic functions
Method, auth-token: Private generic functions
Method, bolt-hello: Private generic functions
Method, bolt-protocol-version: Private generic functions
Method, bolt-transaction-autocommit: Public generic functions
Method, category: Public generic functions
Method, category: Public generic functions
Method, category: Public generic functions
Method, category: Public generic functions
Method, category: Public generic functions
Method, category: Public generic functions
Method, category: Public generic functions
Method, connect: Public generic functions
Method, connection: Public generic functions
Method, connection-id: Public generic functions
Method, days: Private generic functions
Method, days: Private generic functions
Method, disconnect: Public generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encode-element: Private generic functions
Method, encrypted: Private generic functions
Method, end-node-id: Public generic functions
Method, establish-bolt-session: Public generic functions
Method, hostname: Public generic functions
Method, id: Private generic functions
Method, indices: Private generic functions
Method, major-version: Public generic functions
Method, major-version: Public generic functions
Method, message: Public generic functions
Method, message: Public generic functions
Method, message: Public generic functions
Method, message: Public generic functions
Method, message: Public generic functions
Method, message: Public generic functions
Method, message: Public generic functions
Method, minor-version: Public generic functions
Method, minor-version: Public generic functions
Method, months: Private generic functions
Method, nanoseconds: Private generic functions
Method, nanoseconds: Private generic functions
Method, nanoseconds: Private generic functions
Method, nanoseconds: Private generic functions
Method, nanoseconds: Private generic functions
Method, nanoseconds: Private generic functions
Method, neo4j-version: Public generic functions
Method, node-id: Public generic functions
Method, node-labels: Public standalone methods
Method, node-properties: Public generic functions
Method, nodes: Private generic functions
Method, parse-autocommit-tx-response: Private generic functions
Method, parse-server-hello: Private generic functions
Method, password: Private generic functions
Method, patch-release: Private generic functions
Method, port: Public generic functions
Method, properties: Private generic functions
Method, read-bolt-chunk-from-stream: Private generic functions
Method, read-bolt-message-from-stream: Private generic functions
Method, relationship-id: Public generic functions
Method, relationship-properties: Public generic functions
Method, relationship-type: Public generic functions
Method, relationship-type: Public generic functions
Method, rels: Private generic functions
Method, scheme: Private generic functions
Method, seconds: Private generic functions
Method, seconds: Private generic functions
Method, seconds: Private generic functions
Method, seconds: Private generic functions
Method, send-packstream: Private generic functions
Method, srid: Private generic functions
Method, srid: Private generic functions
Method, start-node-id: Public generic functions
Method, timeout: Private generic functions
Method, title: Public generic functions
Method, title: Public generic functions
Method, title: Public generic functions
Method, title: Public generic functions
Method, tz-id: Private generic functions
Method, tz-offset-seconds: Private generic functions
Method, tz-offset-seconds: Private generic functions
Method, username: Private generic functions
Method, username: Private generic functions
Method, x: Private generic functions
Method, x: Private generic functions
Method, y: Private generic functions
Method, y: Private generic functions
Method, z: Private generic functions
minor-version: Public generic functions
minor-version: Public generic functions
minor-version: Public generic functions
months: Private generic functions
months: Private generic functions

N
nanoseconds: Private generic functions
nanoseconds: Private generic functions
nanoseconds: Private generic functions
nanoseconds: Private generic functions
nanoseconds: Private generic functions
nanoseconds: Private generic functions
nanoseconds: Private generic functions
neo4j-version: Public generic functions
neo4j-version: Public generic functions
node-id: Public generic functions
node-id: Public generic functions
node-labels: Public standalone methods
node-properties: Public generic functions
node-properties: Public generic functions
nodes: Private generic functions
nodes: Private generic functions

P
parse-autocommit-tx-response: Private generic functions
parse-autocommit-tx-response: Private generic functions
parse-server-hello: Private generic functions
parse-server-hello: Private generic functions
password: Private generic functions
password: Private generic functions
patch-release: Private generic functions
patch-release: Private generic functions
port: Public generic functions
port: Public generic functions
properties: Private generic functions
properties: Private generic functions

R
read-bolt-chunk-from-stream: Private generic functions
read-bolt-chunk-from-stream: Private generic functions
read-bolt-message-from-stream: Private generic functions
read-bolt-message-from-stream: Private generic functions
read-float: Private ordinary functions
read-signed-integer: Private ordinary functions
read-tx-responses: Private ordinary functions
relationship-id: Public generic functions
relationship-id: Public generic functions
relationship-properties: Public generic functions
relationship-properties: Public generic functions
relationship-type: Public generic functions
relationship-type: Public generic functions
relationship-type: Public generic functions
rels: Private generic functions
rels: Private generic functions

S
scheme: Private generic functions
scheme: Private generic functions
seconds: Private generic functions
seconds: Private generic functions
seconds: Private generic functions
seconds: Private generic functions
seconds: Private generic functions
send-packstream: Private generic functions
send-packstream: Private generic functions
srid: Private generic functions
srid: Private generic functions
srid: Private generic functions
start-node-id: Public generic functions
start-node-id: Public generic functions

T
timeout: Private generic functions
timeout: Private generic functions
title: Public generic functions
title: Public generic functions
title: Public generic functions
title: Public generic functions
title: Public generic functions
twos-complement: Private ordinary functions
twos-complement-signed: Private ordinary functions
tz-id: Private generic functions
tz-id: Private generic functions
tz-offset-seconds: Private generic functions
tz-offset-seconds: Private generic functions
tz-offset-seconds: Private generic functions

U
username: Private generic functions
username: Private generic functions
username: Private generic functions

V
vector-to-date: Private ordinary functions
vector-to-datetime: Private ordinary functions
vector-to-datetimezoneid: Private ordinary functions
vector-to-duration: Private ordinary functions
vector-to-localdatetime: Private ordinary functions
vector-to-localtime: Private ordinary functions
vector-to-node: Private ordinary functions
vector-to-point2d: Private ordinary functions
vector-to-point3d: Private ordinary functions
vector-to-relationship: Private ordinary functions
vector-to-time: Private ordinary functions
vectorise-list: Private ordinary functions

X
x: Private generic functions
x: Private generic functions
x: Private generic functions

Y
y: Private generic functions
y: Private generic functions
y: Private generic functions

Z
z: Private generic functions
z: Private generic functions


A.3 Variables

Jump to:   *   +  
A   B   C   D   E   H   I   M   N   P   R   S   T   U   X   Y   Z  
Index Entry  Section

*
*log-stream*: Private special variables
*loglevel*: Private special variables
*loglevels*: Private special variables

+
+bolt-announce-protocol+: Private special variables
+bolt-begin+: Private constants
+bolt-commit+: Private constants
+bolt-discard+: Private constants
+bolt-failure+: Private constants
+bolt-goodbye+: Private constants
+bolt-hello+: Private constants
+bolt-ignored+: Private constants
+bolt-pull+: Private constants
+bolt-record+: Private constants
+bolt-reset+: Private constants
+bolt-rollback+: Private constants
+bolt-route+: Private constants
+bolt-run+: Private constants
+bolt-success+: Private constants
+bolt-termination-chunk+: Private special variables
+packstream-false+: Private constants
+packstream-null+: Private constants
+packstream-true+: Private constants

A
auth-token: Public classes

B
bolt-version: Public classes

C
category: Public conditions
category: Public conditions
category: Public conditions
category: Public conditions
category: Public conditions
category: Public conditions
category: Private conditions
connection: Public classes
connection-id: Public classes
Constant, +bolt-begin+: Private constants
Constant, +bolt-commit+: Private constants
Constant, +bolt-discard+: Private constants
Constant, +bolt-failure+: Private constants
Constant, +bolt-goodbye+: Private constants
Constant, +bolt-hello+: Private constants
Constant, +bolt-ignored+: Private constants
Constant, +bolt-pull+: Private constants
Constant, +bolt-record+: Private constants
Constant, +bolt-reset+: Private constants
Constant, +bolt-rollback+: Private constants
Constant, +bolt-route+: Private constants
Constant, +bolt-run+: Private constants
Constant, +bolt-success+: Private constants
Constant, +packstream-false+: Private constants
Constant, +packstream-null+: Private constants
Constant, +packstream-true+: Private constants

D
days: Public classes
days: Public classes

E
encryption: Public classes
end-node-id: Public classes

H
hostname: Public classes

I
id: Public classes
indices: Public classes

M
major-version: Public classes
major-version: Public classes
major-version: Public classes
major-version: Public classes
message: Public conditions
message: Public conditions
message: Public conditions
message: Public conditions
message: Public conditions
message: Public conditions
message: Private conditions
minor-version: Public classes
minor-version: Public classes
minor-version: Public classes
minor-version: Public classes
months: Public classes

N
nanoseconds: Public classes
nanoseconds: Public classes
nanoseconds: Public classes
nanoseconds: Public classes
nanoseconds: Public classes
nanoseconds: Public classes
neo4j-version: Public classes
node-id: Public classes
node-labels: Public classes
node-properties: Public classes
nodes: Public classes

P
password: Public classes
patch-release: Public classes
patch-release: Public classes
port: Public classes
properties: Public classes

R
relationship-id: Public classes
relationship-properties: Public classes
relationship-type: Public classes
relationship-type: Public classes
rels: Public classes

S
scheme: Public classes
scheme: Public classes
scheme: Private classes
seconds: Public classes
seconds: Public classes
seconds: Public classes
seconds: Public classes
Slot, auth-token: Public classes
Slot, bolt-version: Public classes
Slot, category: Public conditions
Slot, category: Public conditions
Slot, category: Public conditions
Slot, category: Public conditions
Slot, category: Public conditions
Slot, category: Public conditions
Slot, category: Private conditions
Slot, connection: Public classes
Slot, connection-id: Public classes
Slot, days: Public classes
Slot, days: Public classes
Slot, encryption: Public classes
Slot, end-node-id: Public classes
Slot, hostname: Public classes
Slot, id: Public classes
Slot, indices: Public classes
Slot, major-version: Public classes
Slot, major-version: Public classes
Slot, major-version: Public classes
Slot, major-version: Public classes
Slot, message: Public conditions
Slot, message: Public conditions
Slot, message: Public conditions
Slot, message: Public conditions
Slot, message: Public conditions
Slot, message: Public conditions
Slot, message: Private conditions
Slot, minor-version: Public classes
Slot, minor-version: Public classes
Slot, minor-version: Public classes
Slot, minor-version: Public classes
Slot, months: Public classes
Slot, nanoseconds: Public classes
Slot, nanoseconds: Public classes
Slot, nanoseconds: Public classes
Slot, nanoseconds: Public classes
Slot, nanoseconds: Public classes
Slot, nanoseconds: Public classes
Slot, neo4j-version: Public classes
Slot, node-id: Public classes
Slot, node-labels: Public classes
Slot, node-properties: Public classes
Slot, nodes: Public classes
Slot, password: Public classes
Slot, patch-release: Public classes
Slot, patch-release: Public classes
Slot, port: Public classes
Slot, properties: Public classes
Slot, relationship-id: Public classes
Slot, relationship-properties: Public classes
Slot, relationship-type: Public classes
Slot, relationship-type: Public classes
Slot, rels: Public classes
Slot, scheme: Public classes
Slot, scheme: Public classes
Slot, scheme: Private classes
Slot, seconds: Public classes
Slot, seconds: Public classes
Slot, seconds: Public classes
Slot, seconds: Public classes
Slot, srid: Public classes
Slot, srid: Public classes
Slot, start-node-id: Public classes
Slot, timeout: Public classes
Slot, title: Public conditions
Slot, title: Public conditions
Slot, title: Public conditions
Slot, title: Private conditions
Slot, tz-id: Public classes
Slot, tz-offset-seconds: Public classes
Slot, tz-offset-seconds: Public classes
Slot, username: Public classes
Slot, username: Public classes
Slot, x: Public classes
Slot, x: Public classes
Slot, y: Public classes
Slot, y: Public classes
Slot, z: Public classes
Special Variable, *log-stream*: Private special variables
Special Variable, *loglevel*: Private special variables
Special Variable, *loglevels*: Private special variables
Special Variable, +bolt-announce-protocol+: Private special variables
Special Variable, +bolt-termination-chunk+: Private special variables
srid: Public classes
srid: Public classes
start-node-id: Public classes

T
timeout: Public classes
title: Public conditions
title: Public conditions
title: Public conditions
title: Private conditions
tz-id: Public classes
tz-offset-seconds: Public classes
tz-offset-seconds: Public classes

U
username: Public classes
username: Public classes

X
x: Public classes
x: Public classes

Y
y: Public classes
y: Public classes

Z
z: Public classes


A.4 Data types

Jump to:   B   C   D   F   L   N   P   R   S   T   U  
Index Entry  Section

B
binary-file.lisp: The neo4cl/binary-file․lisp file
bolt-auth-basic: Public classes
bolt-auth-none: Public classes
bolt-auth-token: Private classes
bolt-error: Public conditions
bolt-protocol: Public classes
bolt-protocol-4-3: Public classes
bolt-server: Public classes
bolt-session: Public classes
bolt.lisp: The neo4cl/bolt․lisp file

C
Class, bolt-auth-basic: Public classes
Class, bolt-auth-none: Public classes
Class, bolt-auth-token: Private classes
Class, bolt-protocol: Public classes
Class, bolt-protocol-4-3: Public classes
Class, bolt-server: Public classes
Class, bolt-session: Public classes
Class, date: Public classes
Class, datetime: Public classes
Class, datetimezoneid: Public classes
Class, duration: Public classes
Class, localdatetime: Public classes
Class, localtime: Public classes
Class, neo4j-4-3-9: Public classes
Class, neo4j-version: Public classes
Class, node: Public classes
Class, path: Public classes
Class, point2d: Public classes
Class, point3d: Public classes
Class, relationship: Public classes
Class, timestructure: Public classes
Class, unbound-relationship: Public classes
client-error: Public conditions
client-notification: Private conditions
Condition, bolt-error: Public conditions
Condition, client-error: Public conditions
Condition, client-notification: Private conditions
Condition, database-error: Public conditions
Condition, packstream-error: Public conditions
Condition, service-error: Public conditions
Condition, transient-error: Public conditions
conditions.lisp: The neo4cl/conditions․lisp file

D
database-error: Public conditions
date: Public classes
datetime: Public classes
datetimezoneid: Public classes
duration: Public classes

F
File, binary-file.lisp: The neo4cl/binary-file․lisp file
File, bolt.lisp: The neo4cl/bolt․lisp file
File, conditions.lisp: The neo4cl/conditions․lisp file
File, logging.lisp: The neo4cl/logging․lisp file
File, neo4cl.asd: The neo4cl/neo4cl․asd file
File, package.lisp: The neo4cl/package․lisp file
File, packstream-decoding.lisp: The neo4cl/packstream-decoding․lisp file
File, packstream-encoding.lisp: The neo4cl/packstream-encoding․lisp file
File, packstream-structures.lisp: The neo4cl/packstream-structures․lisp file

L
localdatetime: Public classes
localtime: Public classes
logging.lisp: The neo4cl/logging․lisp file

N
neo4cl: The neo4cl system
neo4cl: The neo4cl package
neo4cl.asd: The neo4cl/neo4cl․asd file
neo4j-4-3-9: Public classes
neo4j-version: Public classes
node: Public classes

P
Package, neo4cl: The neo4cl package
package.lisp: The neo4cl/package․lisp file
packstream-decoding.lisp: The neo4cl/packstream-decoding․lisp file
packstream-encoding.lisp: The neo4cl/packstream-encoding․lisp file
packstream-error: Public conditions
packstream-structures.lisp: The neo4cl/packstream-structures․lisp file
path: Public classes
point2d: Public classes
point3d: Public classes

R
relationship: Public classes

S
service-error: Public conditions
System, neo4cl: The neo4cl system

T
timestructure: Public classes
transient-error: Public conditions

U
unbound-relationship: Public classes