[][src]Struct gdnative::api::StreamPeerGDNative

pub struct StreamPeerGDNative { /* fields omitted */ }

core class StreamPeerGDNative inherits StreamPeer (reference counted).

Official documentation

See the documentation of this class in the Godot engine's official documentation.

Memory management

The lifetime of this object is automatically managed through reference counting.

Class hierarchy

StreamPeerGDNative inherits methods from:

Safety

All types in the Godot API have "interior mutability" in Rust parlance. To enforce that the official thread-safety guidelines are followed, the typestate pattern is used in the Ref and TRef smart pointers, and the Instance API. The typestate Access in these types tracks whether the access is unique, shared, or exclusive to the current thread. For more information, see the type-level documentation on Ref.

Implementations

impl StreamPeerGDNative[src]

pub fn new() -> Ref<StreamPeerGDNative, Unique>[src]

Creates a new instance of this object.

This is a reference-counted type. The returned object is automatically managed by Ref.

Methods from Deref<Target = StreamPeer>

pub fn get_16(&self) -> i64[src]

Gets a signed 16-bit value from the stream.

pub fn get_32(&self) -> i64[src]

Gets a signed 32-bit value from the stream.

pub fn get_64(&self) -> i64[src]

Gets a signed 64-bit value from the stream.

pub fn get_8(&self) -> i64[src]

Gets a signed byte from the stream.

pub fn get_available_bytes(&self) -> i64[src]

Returns the amount of bytes this [StreamPeer] has available.

pub fn get_data(&self, bytes: i64) -> VariantArray<Shared>[src]

Returns a chunk data with the received bytes. The amount of bytes to be received can be requested in the [code]bytes[/code] argument. If not enough bytes are available, the function will block until the desired amount is received. This function returns two values, an [enum @GlobalScope.Error] code and a data array.

pub fn get_double(&self) -> f64[src]

Gets a double-precision float from the stream.

pub fn get_float(&self) -> f64[src]

Gets a single-precision float from the stream.

pub fn get_partial_data(&self, bytes: i64) -> VariantArray<Shared>[src]

Returns a chunk data with the received bytes. The amount of bytes to be received can be requested in the "bytes" argument. If not enough bytes are available, the function will return how many were actually received. This function returns two values, an [enum @GlobalScope.Error] code, and a data array.

pub fn get_string(&self, bytes: i64) -> GodotString[src]

Gets a string with byte-length [code]bytes[/code] from the stream. If [code]bytes[/code] is negative (default) the length will be read from the stream using the reverse process of [method put_string].

Default Arguments

  • bytes - -1

pub fn get_u16(&self) -> i64[src]

Gets an unsigned 16-bit value from the stream.

pub fn get_u32(&self) -> i64[src]

Gets an unsigned 32-bit value from the stream.

pub fn get_u64(&self) -> i64[src]

Gets an unsigned 64-bit value from the stream.

pub fn get_u8(&self) -> i64[src]

Gets an unsigned byte from the stream.

pub fn get_utf8_string(&self, bytes: i64) -> GodotString[src]

Gets an UTF-8 string with byte-length [code]bytes[/code] from the stream (this decodes the string sent as UTF-8). If [code]bytes[/code] is negative (default) the length will be read from the stream using the reverse process of [method put_utf8_string].

Default Arguments

  • bytes - -1

pub fn get_var(&self, allow_objects: bool) -> Variant[src]

Gets a Variant from the stream. If [code]allow_objects[/code] is [code]true[/code], decoding objects is allowed.
				[b]Warning:[/b] Deserialized objects can contain code which gets executed. Do not use this option if the serialized object comes from untrusted sources to avoid potential security threats such as remote code execution.

Default Arguments

  • allow_objects - false

pub fn is_big_endian_enabled(&self) -> bool[src]

If [code]true[/code], this [StreamPeer] will using big-endian format for encoding and decoding.

pub fn put_16(&self, value: i64)[src]

Puts a signed 16-bit value into the stream.

pub fn put_32(&self, value: i64)[src]

Puts a signed 32-bit value into the stream.

pub fn put_64(&self, value: i64)[src]

Puts a signed 64-bit value into the stream.

pub fn put_8(&self, value: i64)[src]

Puts a signed byte into the stream.

pub fn put_data(&self, data: TypedArray<u8>) -> Result<(), GodotError>[src]

Sends a chunk of data through the connection, blocking if necessary until the data is done sending. This function returns an [enum @GlobalScope.Error] code.

pub fn put_double(&self, value: f64)[src]

Puts a double-precision float into the stream.

pub fn put_float(&self, value: f64)[src]

Puts a single-precision float into the stream.

pub fn put_partial_data(&self, data: TypedArray<u8>) -> VariantArray<Shared>[src]

Sends a chunk of data through the connection. If all the data could not be sent at once, only part of it will. This function returns two values, an [enum @GlobalScope.Error] code and an integer, describing how much data was actually sent.

pub fn put_string(&self, value: impl Into<GodotString>)[src]

Puts a zero-terminated ASCII string into the stream prepended by a 32-bit unsigned integer representing its size.
				Note: To put an ASCII string without prepending its size, you can use [method put_data]:
				[codeblock]
				put_data("Hello world".to_ascii())
				[/codeblock]

pub fn put_u16(&self, value: i64)[src]

Puts an unsigned 16-bit value into the stream.

pub fn put_u32(&self, value: i64)[src]

Puts an unsigned 32-bit value into the stream.

pub fn put_u64(&self, value: i64)[src]

Puts an unsigned 64-bit value into the stream.

pub fn put_u8(&self, value: i64)[src]

Puts an unsigned byte into the stream.

pub fn put_utf8_string(&self, value: impl Into<GodotString>)[src]

Puts a zero-terminated UTF-8 string into the stream prepended by a 32 bits unsigned integer representing its size.
				Note: To put an UTF-8 string without prepending its size, you can use [method put_data]:
				[codeblock]
				put_data("Hello world".to_utf8())
				[/codeblock]

pub fn put_var(&self, value: impl OwnedToVariant, full_objects: bool)[src]

Puts a Variant into the stream. If [code]full_objects[/code] is [code]true[/code] encoding objects is allowed (and can potentially include code).

Default Arguments

  • full_objects - false

pub fn set_big_endian(&self, enable: bool)[src]

If [code]true[/code], this [StreamPeer] will using big-endian format for encoding and decoding.

Trait Implementations

impl Debug for StreamPeerGDNative[src]

impl Deref for StreamPeerGDNative[src]

type Target = StreamPeer

The resulting type after dereferencing.

impl DerefMut for StreamPeerGDNative[src]

impl GodotObject for StreamPeerGDNative[src]

type RefKind = RefCounted

The memory management kind of this type. This modifies the behavior of the Ref smart pointer. See its type-level documentation for more information. Read more

impl Instanciable for StreamPeerGDNative[src]

impl SubClass<Object> for StreamPeerGDNative[src]

impl SubClass<Reference> for StreamPeerGDNative[src]

impl SubClass<StreamPeer> for StreamPeerGDNative[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> SubClass<T> for T where
    T: GodotObject
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.