View fun.cpp
#include <stdio.h> | |
#include <type_traits> | |
#include <utility> | |
#include <new> | |
template<typename T> | |
void forget1(T &&value) { | |
union Forget { | |
~Forget() { } | |
typename std::remove_reference<T>::type t; |
View type_name.cpp
#include <cstddef> | |
#include <iostream> | |
#include <string_view> | |
template<typename T> | |
static constexpr inline const char *helper1() { | |
// Must have the same signature as helper2(). | |
return __PRETTY_FUNCTION__ + __builtin_strlen(__FUNCTION__); | |
} |
View fork.swift
// Note: calling fork() can be unsafe and dangerous, that | |
// is why Swift doesn't let you invoke it directy. Be very | |
// careful about how you use fork(). For some more details, | |
// see https://www.evanjones.ca/fork-is-dangerous.html and | |
// http://www.sealiesoftware.com/blog/archive/2017/6/5/Objective-C_and_fork_in_macOS_1013.html | |
import Darwin | |
let RTLD_DEFAULT = UnsafeMutableRawPointer(bitPattern: -2) | |
let forkPtr = dlsym(RTLD_DEFAULT, "fork") |
View obozrenie-rs.diff
diff --git a/src/main.rs b/src/main.rs | |
index ac542de..e40605d 100644 | |
--- a/src/main.rs | |
+++ b/src/main.rs | |
@@ -16,12 +16,10 @@ use futures_timer::*; | |
use gio::prelude::*; | |
use gtk::prelude::*; | |
use librgs::ServerEntry; | |
-use static_resources::Resources; | |
use std::sync::{ |
View foo.cpp
#ifndef __OBJC2__ | |
#define __OBJC2__ | |
#endif | |
struct objc_selector; struct objc_class; | |
struct __rw_objc_super { | |
struct objc_object *object; | |
struct objc_object *superClass; | |
__rw_objc_super(struct objc_object *o, struct objc_object *s) : object(o), superClass(s) {} | |
}; | |
#ifndef _REWRITER_typedef_Protocol |
View gist:1213017230377f2d23d0179a05118ffc
Mar 05 12:35:43 org.gnome.Shell.desktop[1659]: (EE) | |
Mar 05 12:35:43 org.gnome.Shell.desktop[1659]: (EE) Backtrace: | |
Mar 05 12:35:43 org.gnome.Shell.desktop[1659]: (EE) 0: /usr/bin/Xwayland (OsLookupColor+0x139) [0x5909c9] | |
Mar 05 12:35:43 org.gnome.Shell.desktop[1659]: (EE) 1: /lib64/libpthread.so.0 (__restore_rt+0x0) [0x7ffae328d5bf] | |
Mar 05 12:35:43 org.gnome.Shell.desktop[1659]: (EE) 2: /usr/bin/Xwayland (os_move_fd+0x2ca0) [0x599b40] | |
Mar 05 12:35:43 org.gnome.Shell.desktop[1659]: (EE) 3: /usr/bin/Xwayland (dri3_send_open_reply+0x6d) [0x4f123d] | |
Mar 05 12:35:43 org.gnome.Shell.desktop[1659]: (EE) 4: /usr/bin/Xwayland (InitExtensions+0x657) [0x42ab17] | |
Mar 05 12:35:43 org.gnome.Shell.desktop[1659]: (EE) 5: /lib64/libffi.so.6 (ffi_call_unix64+0x4c) [0x7ffae282ac58] | |
Mar 05 12:35:43 org.gnome.Shell.desktop[1659]: (EE) 6: /lib64/libffi.so.6 (ffi_call+0x32a) [0x7ffae282a6ba] | |
Mar 05 12:35:43 org.gnome.Shell.desktop[1659]: (EE) 7: /lib64/libwayland-client.so.0 (wl_log_set_handler_client+0x1c9e) [0x7ffae506e80e] |
View rust_ex5.rs
fn middle_name(full_name: &str) -> &str { | |
full_name.split_whitespace().nth(1).unwrap() | |
} | |
fn main() { | |
let name = String::from("Harry James Potter"); | |
let res = middle_name(&name); | |
assert_eq!(res, "James"); | |
} |
View rust_ex6.rs
// this does not compile | |
fn middle_name(full_name: &str) -> &str { | |
full_name.split_whitespace().nth(1).unwrap() | |
} | |
fn main() { | |
let res; | |
{ | |
let name = String::from("Harry James Potter"); |
View rust_ex9.rs
fn middle_name<'a>(full_name: &'a str) -> &'a str { | |
full_name.split_whitespace().nth(1).unwrap() | |
} | |
fn main() { | |
let name = String::from("Harry James Potter"); | |
let res = middle_name(&name); | |
assert_eq!(res, "James"); | |
// won't compile: |
View rust_ex10.rs
fn search<'a, 'b>(needle: &'a str, haystack: &'b str) -> Option<&'b str> { | |
// imagine some clever algorithm here | |
// that returns a slice of the original string | |
let len = needle.len(); | |
if haystack.chars().nth(0) == needle.chars().nth(0) { | |
Some(&haystack[..len]) | |
} else if haystack.chars().nth(1) == needle.chars().nth(0) { | |
Some(&haystack[1..len+1]) | |
} else { | |
None |
NewerOlder