хуйня 2
This commit is contained in:
parent
b468d6cf12
commit
97b00dfc7e
36
src/d.rs
Normal file
36
src/d.rs
Normal file
@ -0,0 +1,36 @@
|
||||
use std::ops::Index;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
pub enum BufferError {
|
||||
EndOfBuffer
|
||||
}
|
||||
|
||||
pub struct Buffer {
|
||||
bytes: Vec<u8>,
|
||||
index: usize
|
||||
}
|
||||
|
||||
impl Buffer {
|
||||
pub fn new(bytes: Vec<u8>, index: usize) -> Self {
|
||||
Buffer { bytes, index }
|
||||
}
|
||||
|
||||
pub fn read(&self, size: usize) -> Result<Vec<u8>, BufferError> {
|
||||
if self.index + size >= self.bytes.len() {return Err(BufferError::EndOfBuffer);}
|
||||
// self.index += size;
|
||||
Ok(self.bytes[self.index..self.index+size-1].to_vec())
|
||||
}
|
||||
|
||||
pub fn read2(&mut self, size: usize) -> Result<Vec<u8>, BufferError> {
|
||||
if self.index + size >= self.bytes.len() {return Err(BufferError::EndOfBuffer);}
|
||||
self.index += size;
|
||||
Ok(self.bytes[self.index..self.index+size-1].to_vec())
|
||||
}
|
||||
}
|
||||
|
22
src/main.rs
22
src/main.rs
@ -1,17 +1,25 @@
|
||||
mod data;
|
||||
use data::{Packet, Server, Socket};
|
||||
|
||||
mod d;
|
||||
use d::*;
|
||||
|
||||
use std::thread;
|
||||
|
||||
fn main() {
|
||||
let Ok(server) = Server::new("127.0.0.1:25565") else {
|
||||
println!("Не удалось забиндить сервер"); return;
|
||||
};
|
||||
let a = Buffer::new(vec![0x01,0xFF,0x33], 0);
|
||||
let b = a;
|
||||
let x = a.read(1);
|
||||
let x2 = a.read(1);
|
||||
|
||||
loop {
|
||||
let socket = server.accept();
|
||||
thread::spawn(move || { handle_connection(socket); });
|
||||
}
|
||||
// let Ok(server) = Server::new("127.0.0.1:25565") else {
|
||||
// println!("Не удалось забиндить сервер"); return;
|
||||
// };
|
||||
|
||||
// loop {
|
||||
// let socket = server.accept();
|
||||
// thread::spawn(move || { handle_connection(socket); });
|
||||
// }
|
||||
}
|
||||
|
||||
fn handle_connection(socket: Socket) {
|
||||
|
Loading…
Reference in New Issue
Block a user