gramps

Types

pub type ControlFrame {
  CloseFrame(payload_length: Int, payload: BitArray)
  PingFrame(payload_length: Int, payload: BitArray)
  PongFrame(payload_length: Int, payload: BitArray)
}

Constructors

  • CloseFrame(payload_length: Int, payload: BitArray)
  • PingFrame(payload_length: Int, payload: BitArray)
  • PongFrame(payload_length: Int, payload: BitArray)
pub type DataFrame {
  TextFrame(payload_length: Int, payload: BitArray)
  BinaryFrame(payload_length: Int, payload: BitArray)
}

Constructors

  • TextFrame(payload_length: Int, payload: BitArray)
  • BinaryFrame(payload_length: Int, payload: BitArray)
pub type DecodePacketError {
  More(length: Int)
  HttpError(reason: String)
}

Constructors

  • More(length: Int)
  • HttpError(reason: String)
pub type Frame {
  Data(DataFrame)
  Control(ControlFrame)
  Continuation(length: Int, payload: BitArray)
}

Constructors

  • Data(DataFrame)
  • Control(ControlFrame)
  • Continuation(length: Int, payload: BitArray)
pub type FrameParseError {
  NeedMoreData(BitArray)
  InvalidFrame
}

Constructors

  • NeedMoreData(BitArray)
  • InvalidFrame
pub type PacketType {
  HttphBin
  HttpBin
}

Constructors

  • HttphBin
  • HttpBin
pub type ParsedFrame {
  Complete(Frame)
  Incomplete(Frame)
}

Constructors

  • Complete(Frame)
  • Incomplete(Frame)

Constants

pub const websocket_client_key: String = "dGhlIHNhbXBsZSBub25jZQ=="

Functions

pub fn aggregate_frames(
  frames: List(ParsedFrame),
  previous: Option(Frame),
  joined: List(Frame),
) -> Result(List(Frame), Nil)
pub fn frame_from_message(
  message: BitArray,
) -> Result(#(ParsedFrame, BitArray), FrameParseError)
pub fn frame_to_bytes_builder(
  frame: Frame,
  mask: Option(BitArray),
) -> BytesBuilder
pub fn get_messages(
  data: BitArray,
  frames: List(ParsedFrame),
) -> #(List(ParsedFrame), BitArray)
pub fn parse_websocket_key(key: String) -> String
pub fn read_request(
  data: BitArray,
) -> Result(#(Request(Nil), BitArray), DecodePacketError)
pub fn read_response(
  data: BitArray,
) -> Result(#(Response(Nil), BitArray), DecodePacketError)
pub fn to_binary_frame(
  data: BitArray,
  mask: Bool,
) -> BytesBuilder
pub fn to_text_frame(data: String, mask: Bool) -> BytesBuilder
Search Document