suweal/wss/surreal_wss
Types
pub type SurrealWssConnection {
SurrealWssConnection(
subject: process.Subject(
collie.WebsocketMessage(SurrealWssMessage),
),
connection: suweal.Connection,
)
}
Constructors
-
SurrealWssConnection( subject: process.Subject( collie.WebsocketMessage(SurrealWssMessage), ), connection: suweal.Connection, )
pub type SurrealWssConnectionBuilder {
SurrealWssConnectionBuilder(
connection: suweal.Connection,
name: option.Option(
process.Name(collie.WebsocketMessage(SurrealWssMessage)),
),
on_close: fn(collie.CloseReason) -> Nil,
)
}
Constructors
-
SurrealWssConnectionBuilder( connection: suweal.Connection, name: option.Option( process.Name(collie.WebsocketMessage(SurrealWssMessage)), ), on_close: fn(collie.CloseReason) -> Nil, )
pub type SurrealWssError {
InvalidUrl
FailedToConnect
}
Constructors
-
InvalidUrl -
FailedToConnect
pub type SurrealWssMessage {
Query(
query: String,
receiver: process.Subject(SurrealWssResponse(dynamic.Dynamic)),
)
Signup(
collection: String,
fields: List(#(String, surreal_ql.SurrealQL)),
receiver: process.Subject(SurrealWssResponse(dynamic.Dynamic)),
)
Signin(
collection: String,
fields: List(#(String, surreal_ql.SurrealQL)),
receiver: process.Subject(SurrealWssResponse(dynamic.Dynamic)),
)
Use(
namespace: String,
database: String,
receiver: process.Subject(SurrealWssResponse(dynamic.Dynamic)),
)
}
Constructors
-
Query( query: String, receiver: process.Subject(SurrealWssResponse(dynamic.Dynamic)), ) -
Signup( collection: String, fields: List(#(String, surreal_ql.SurrealQL)), receiver: process.Subject(SurrealWssResponse(dynamic.Dynamic)), ) -
Signin( collection: String, fields: List(#(String, surreal_ql.SurrealQL)), receiver: process.Subject(SurrealWssResponse(dynamic.Dynamic)), ) -
Use( namespace: String, database: String, receiver: process.Subject(SurrealWssResponse(dynamic.Dynamic)), )
pub type SurrealWssResponse(a) {
AuthResponse(id: Int, result: String)
ErrorResponse(id: Int, error: SurrealWssResponseError)
QueryResponse(id: Int, result: List(suweal.SurrealResponse(a)))
UseResponse(id: Int)
}
Constructors
-
AuthResponse(id: Int, result: String) -
ErrorResponse(id: Int, error: SurrealWssResponseError) -
QueryResponse(id: Int, result: List(suweal.SurrealResponse(a))) -
UseResponse(id: Int)
pub type SurrealWssResponseError {
SurrealWssResponseError(
cause: option.Option(String),
code: Int,
kind: String,
message: String,
)
}
Constructors
-
SurrealWssResponseError( cause: option.Option(String), code: Int, kind: String, message: String, )
Values
pub fn named(
builder: SurrealWssConnectionBuilder,
name: process.Name(collie.WebsocketMessage(SurrealWssMessage)),
) -> SurrealWssConnectionBuilder
pub fn new(
connection: suweal.Connection,
) -> SurrealWssConnectionBuilder
pub fn on_close(
builder: SurrealWssConnectionBuilder,
on_close: fn(collie.CloseReason) -> Nil,
) -> SurrealWssConnectionBuilder
pub fn send(
connection: SurrealWssConnection,
message: SurrealWssMessage,
) -> Nil
pub fn send_query(
connection: SurrealWssConnection,
query: String,
receiver: process.Subject(SurrealWssResponse(dynamic.Dynamic)),
) -> Nil
pub fn send_signin(
connection: SurrealWssConnection,
collection: String,
fields: List(#(String, surreal_ql.SurrealQL)),
receiver: process.Subject(SurrealWssResponse(dynamic.Dynamic)),
) -> Nil
pub fn send_signup(
connection: SurrealWssConnection,
collection: String,
fields: List(#(String, surreal_ql.SurrealQL)),
receiver: process.Subject(SurrealWssResponse(dynamic.Dynamic)),
) -> Nil
pub fn start(
builder: SurrealWssConnectionBuilder,
) -> Result(SurrealWssConnection, SurrealWssError)
pub fn with_database(
connection: SurrealWssConnection,
database: String,
) -> SurrealWssConnection
pub fn with_namespace(
connection: SurrealWssConnection,
namespace: String,
) -> SurrealWssConnection