Skip to content

Instantly share code, notes, and snippets.

struct StdoutLogger {}
impl std::fmt::Display for StdoutLogger {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
writeln!(f, "I am StdoutLogger")
}
}
fn main() {
let l = StdoutLogger {};
trait Logger {
fn log(&self, s: &str);
fn err(&self, e: &str) {
self.log(e);
}
}
struct StdoutLogger {}
impl Logger for StdoutLogger {
trait Logger {
fn log(&self, s: &str);
fn err(&self, e: &str);
}
struct StdoutLogger {}
impl Logger for StdoutLogger {
fn log(&self, s: &str) {
println!("{}", s);
package main
import (
"bytes"
"encoding/gob"
"fmt"
"net"
"os"
"os/exec"
"os/signal"
@grahamking
grahamking / m1.rs
Created April 29, 2013 21:16
Using a module
mod m2;
fn main() {
m2::say_hi();
}
@grahamking
grahamking / m2.rs
Created April 29, 2013 21:14
A module to use from a different file
pub fn say_hi() {
println("Hi!");
}
@grahamking
grahamking / objects.rs
Last active December 16, 2015 17:29
Rust: Objects
extern mod std;
use std::time;
struct User {
name: ~str,
age: int
}
impl User {
@grahamking
grahamking / mutable_pointers.rs
Last active December 16, 2015 17:29
Rust: The pointer and the box it points to
struct Point { x: int, y:int }
fn main() {
// Local variable, easy
let mut p1 = Point{x:1, y:2};
p1.x = 10;
// Owned pointer
// also easy because target inherts mutability
@grahamking
grahamking / memory_example.rs
Last active December 16, 2015 17:29
Rust: Owner memory example
fn main() {
let name: ~str,
other: ~str;
name = ~"Bob";
other = name;
println(other);
@grahamking
grahamking / use_sqlite.rs
Last active December 16, 2015 17:28
Rust: Use sqlite
extern mod sqlite;
fn db() {
let database =
match sqlite::open("test.db") {
Ok(db) => db,
Err(e) => {
println(fmt!("Error opening test.db: %?", e));
return;