Skip to content

Instantly share code, notes, and snippets.

interface ConfigFileInterface
{
public function load();
public function save();
}
class YamlConfigFile implements ConfigFileInterface
{
public function load()
{
@exts
exts / gist:f11259874bb9f781192f
Last active March 28, 2016 21:45
kotlin for loop is weird
//normal for in
fun fizzBuzz(start: Int = 1, end: Int = 15) {
for(foobar in start..end) {
println(when {
foobar % 5 == 0 && foobar % 3 == 0 -> "FizzBuzz"
foobar % 3 == 0 -> "Fizz"
foobar % 5 == 0 -> "Buzz"
else -> "$foobar"
})
}
//idiotcoder.com
class Post
{
private long timestamp = 0;
public long HourAgo {
get { return timestamp - (60 * 60); }
}
public Post(long unixTimestamp)
@exts
exts / itsdatboi.cs
Last active December 20, 2016 02:17
namespace CvsProject
{
internal class Program
{
public static void Main(string[] args)
{
var filename = "csvfile.csv";
var reader = new CsvReader(filename);
reader.ParseContent();
<?php
$app = new \Slim\App();
$app->group('/users/{id:[0-9]+}', function () {
$this->map(['GET', 'DELETE', 'PATCH', 'PUT'], '', function ($request, $response, $args) {
// Find, delete, patch or replace user identified by $args['id']
})->setName('user');
$this->get('/reset-password', function ($request, $response, $args) {
// Route for /users/{id:[0-9]+}/reset-password
// Reset the password for user identified by $args['id']
def example(&ex)
ex.call()
end
@exts
exts / pass-closure-as-argument.cr
Last active January 5, 2017 04:57
Pass closure blocks to methods/functions as parameter arguments in crystal language
# idiotcoder.com
def example(&ex)
ex.call()
end
example &-> {
puts "sup"
}
@exts
exts / route-container.cr
Last active January 5, 2017 05:00
Example of how to approach route containers with groups and sub groups in crystal language (inspired by php frameworks such as Slim Framework 3)
class Route
def initialize(@route = "")
end
def route
@route
end
end
class RouteContainer
@exts
exts / route-parser.cr
Created January 7, 2017 04:06
Crystal Lang: Screwing around, trying to figure out a simple way to parse a route w/ named parameters (and optional ones)
#idiotcoder.com
#eatcodegame.com
class RouteParser
@default_regex_replacement = "w+"
getter regex_variables = {} of String => String
getter default_variables = {} of String => String
getter matched_variables = [] of String
function say(a)
{
splitUp = function(data) {
dataArray = data.split("")
stringArray = [];
for(x = 0; x < dataArray.length; x++) {
if(dataArray[x].match(/[a-zA-Z0-9]/)) {
stringArray[stringArray.length++] = dataArray[x];
}
}