Skip to content

Instantly share code, notes, and snippets.

View flukejones's full-sized avatar

Luke Jones flukejones

View GitHub Profile
@flukejones
flukejones / callbacks.rs
Created December 3, 2016 06:02 — forked from aisamanra/callbacks.rs
Creating a HashMap of closures in Rust
#![feature(unboxed_closures)]
#![feature(core)]
#![feature(io)]
use std::old_io::stdio::{stdin};
use std::collections::HashMap;
// This is our toy state example.
#[derive(Debug)]
struct State {
@flukejones
flukejones / callback.rs
Created December 3, 2016 06:07
A basic kind of callback macro
///
/// A generic version of `callback macro`
///
/// # Example
/// ```rust
/// #[macro_use(callback)]
/// # extern crate framework;
/// trait Command {
/// fn run(&self) {}
/// }
@flukejones
flukejones / playground.rs
Created December 4, 2016 20:57 — forked from anonymous/playground.rs
Shared via Rust Playground
#![feature(core_intrinsics)]
pub trait Deserialize: Sized {
fn deserialize(String) -> Self;
}
struct Position(i32, i32);
struct Velocity(i32, i32);
impl Deserialize for Position {
@flukejones
flukejones / lightdark
Created April 27, 2017 02:04
A shell script to change various themes in Gnome from light/dark
#!/usr/bin/env bash
changetheme() {
local theme_file="$HOME/.config/themelight"
local light_gtk="Adwaita"
local light_gedit="builder"
local light_vim="zellner"
local dark_gtk="Adwaita-dark"

Keybase proof

I hereby claim:

  • I am Luke-Nukem on github.
  • I am luke_jones (https://keybase.io/luke_jones) on keybase.
  • I have a public key whose fingerprint is 869A B608 13C4 24E5 06EB 0D3A 42E6 88B9 27B9 B1BD

To claim this, I am signing this object:

@flukejones
flukejones / .vimrc
Created January 20, 2019 08:49
Vim config for Rust with language server plus completion
" Bare minimum for rust code
" I add other plugins for Nerdtree, git gutter, airline etc
all plug#begin('~/.vim/plugged')
" Status stuff
Plug 'Valloric/YouCompleteMe'
" show ctags (works with rust.vim too)
" see https://github.com/majutsushi/tagbar/wiki#rust for settings
Plug 'majutsushi/tagbar'
" for rls (and others)
Plug 'autozimu/LanguageClient-neovim', {
@flukejones
flukejones / inheritance.rs
Last active February 21, 2019 21:40 — forked from MCluck90/inheritance.rs
Inheritance-like problem in Rust
/// Problem: there is a lot of duplication in function implementations.
/// The two types should have the same interface but use a different underlying type.
///
/// How can I reduce the amount of duplication and avoid having to update the code in two places?
/// In other languages, I would define a base class which accepts a generic type for the `SoundSource`s
/// but I don't know how to solve this sort of problem in Rust.
struct Sound {
// Shared properties
is_playing: bool,
#!/usr/bin/ion
let pwd = @(pwd)
for dir in @split(@(exa -D))
cd $pwd/$dir
echo -e "\nIn $pwd/$dir"
if test -f Cargo.toml && not test -f rust-toolchain
echo -e "Cleaning $dir"
cargo clean

Keybase proof

I hereby claim:

  • I am luke-nukem on github.
  • I am luke_jones (https://keybase.io/luke_jones) on keybase.
  • I have a public key whose fingerprint is E209 5AD4 C48A D6B6 0930 887F 0562 944A C278 E22C

To claim this, I am signing this object:

.primary-bg {
background-color: #3fa1a5; }
.workspace-button {
padding: 2px; }
.workspace-button.active {
background-color: rgba(255, 255, 255, 0.32); }
.workspace-button.active .workspace-icon {
color: white; }