Skip to content

Instantly share code, notes, and snippets.

View RenatoUtsch's full-sized avatar

Renato Utsch RenatoUtsch

View GitHub Profile
@RenatoUtsch
RenatoUtsch / FindMYSQL.cmake
Created January 16, 2012 22:17
Find MySQL with CMake.
# - Try to find MySQL.
# Once done this will define:
# MYSQL_FOUND - If false, do not try to use MySQL.
# MYSQL_INCLUDE_DIRS - Where to find mysql.h, etc.
# MYSQL_LIBRARIES - The libraries to link against.
# MYSQL_VERSION_STRING - Version in a string of MySQL.
#
# Created by RenatoUtsch based on eAthena implementation.
#
# Please note that this module only supports Windows and Linux officially, but
@RenatoUtsch
RenatoUtsch / stack.c
Created November 28, 2012 17:42
C Stack implementation
#include <stdlib.h>
#include <string.h>
#include "stack.h"
typedef struct StackNode {
StackItem item; /** The data of this node. **/
struct StackNode *next; /** The next node (the one below the top). **/
} StackNode;
struct Stack {
@RenatoUtsch
RenatoUtsch / benchmark.c
Created November 28, 2012 17:44
C Benchmark function
/*
* Implementation of the benchmark tool.
*/
#include "benchmark.h"
#ifndef __cplusplus
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@RenatoUtsch
RenatoUtsch / c_stack_test.c
Created November 28, 2012 17:46
C Stack file loading test
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "benchmark/benchmark.h"
#include "c/stack.h"
void test_func(void *data, size_t numBytes)
{
Stack *stack = stackCreate();
char *testData = (char *) data, *p;
@RenatoUtsch
RenatoUtsch / cpp_stack_test.cpp
Created November 28, 2012 17:56
C++ STL Stack file loading test
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <stack>
#include "benchmark/benchmark.h"
void test_func(void *data, size_t numBytes)
{
std::stack<char> myStack;
char *testData = (char *) data, *p;
@RenatoUtsch
RenatoUtsch / gist:6160850
Last active December 20, 2015 16:19
Bug bizarro
inline bool isNondigit(int digit)
{
if(digit == 'ç')
return true;
else
return false;
}
void func()
{
<!doctype html>
<html>
<head>
<title>NVD3 scatter chart example</title>
<meta charset="utf-8">
<meta name="viewport"
content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">
<!-- Compatibility with older browsers. -->
<script src="../bower_components/webcomponentsjs/webcomponents.min.js"></script>
/*
* Replace the original nv.toltip.cleanup function to fix shadow DOM issues.
* This is based on naunga's work at https://github.com/naunga/polychart-element
* I do not submit this as a pull request to nvd3 because it needs shadow DOM
* support or polyfill to work correctly, what nvd3 doesn't use.
**/
(function(){
nv.tooltip.cleanup = function() {
// Find the tooltips, mark them for removal by this class (so others cleanups won't find it)
var tooltips = document.querySelectorAll('body /deep/ .nvtooltip');
// Print an unsigned byte (8 bits) in binary digits.
void print_accu(unsigned char accu) {
int i, j;
for(i = 0x80, j = 0; j < 8; i /= 2)
putchar('0' + ((accu & i) >> (7 - j++)));
}
/**
* Calls the functions from the behaviors in order and then the function
* from the element, if it exists.
*/
_inheritanceCall: function(name) {
var args = arguments.slice(1);
for(b in this.behaviors) {
b[name].apply(this, args);
}