Skip to content

Instantly share code, notes, and snippets.

View kashif's full-sized avatar

Kashif Rasul kashif

  • Berlin, Germany
  • 22:07 (UTC +02:00)
  • X @krasul
View GitHub Profile
@kashif
kashif / hs_2json.sql
Created January 31, 2012 10:10
Another hstore to JSON function by Andrew Dunstan
create or replace function hs_2json(hs hstore) returns text language sql
as $f$
select '{' || array_to_string(array_agg(
'"' || regexp_replace(key,E'[\\"]',E'\\\&','g') || '":' ||
case
when value is null then 'null'
when value ~ '^(true|false|(-?(0|[1-9]\d*)(\.\d+)?([eE][+-]?\d+)?))$' then value
else '"' || regexp_replace(value,E'[\\"]',E'\\\&','g') || '"'
end
@kashif
kashif / hstore_to_json.sql
Created January 20, 2012 22:14
Another hstore to JSON function by Andrew Dunstan
create or replace function hstore_to_json(h hstore) returns text language sql
as $f$
select '{' || array_to_string(array_agg(
'"' || regexp_replace(key,E'[\\"]',E'\\\&','g') || '":' ||
case
when value is null then 'null'
when value ~ '^true|false|(-?(0|[1-9]\d*)(\.\d+)?([eE][+-]?\d+)?)$' then value
else '"' || regexp_replace(value,E'[\\"]',E'\\\&','g') || '"'
end
@kashif
kashif / hs_2json.sql
Created June 17, 2011 10:26
hstore to json function from Ilya Kosmodemiansky
CREATE FUNCTION public.hs_2json(hs hstore) RETURNS text AS $$
DECLARE
rv text;
r record;
BEGIN
rv:='';
for r in (select key, val from each(hs) as h(key, val)) loop
if rv<>'' then
rv:=rv||',';
end if;
@kashif
kashif / mk_postgis_template.sh
Created November 7, 2010 16:16
make a postgis template
# Set postgis-1.5 path.
$ POSTGIS_SQL_PATH=`pg_config --sharedir`/contrib/postgis-1.5
# Creating the template spatial database
$ createdb -E UTF8 -T template0 template_postgis
# and add PLPGSQL language support.
$ createlang -d template_postgis plpgsql
# Loading the PostGIS SQL routines.
$ psql -d template_postgis -f $POSTGIS_SQL_PATH/postgis.sql
@kashif
kashif / libjpeg-turbo.rb
Created November 3, 2010 00:09
Homebrew formula for libjpeg-turbo, a high-speed version of libjpeg for x86 and x86-64 processors which uses SIMD instructions (MMX, SSE2, etc.) to accelerate baseline JPEG compression and decompression.
require 'formula'
class LibjpegTurbo <Formula
url 'http://downloads.sourceforge.net/sourceforge/libjpeg-turbo/libjpeg-turbo-1.0.1.tar.gz'
homepage 'http://libjpeg-turbo.virtualgl.org/'
md5 'e94b72694c9afd716458367dfe84ce1e'
if Hardware.is_64_bit?
depends_on 'nasm'
end
require 'formula'
class Geos <Formula
url 'http://download.osgeo.org/geos/geos-3.2.2.tar.bz2'
homepage 'http://trac.osgeo.org/geos/'
md5 'c5d264acac22fe7720f85dadc1fc17c6'
def options
[
['--enable-python', "Enable build of python module."],
@kashif
kashif / gdal.rb
Created July 21, 2010 13:10 — forked from sabman/gdal.rb
require 'formula'
class Gdal <Formula
url 'http://download.osgeo.org/gdal/gdal-1.7.2.tar.gz'
homepage 'http://www.gdal.org/'
md5 '05351f8cb61761ae579667e24a297fe6'
def options
[
['--with-pg', "Include PostgreSQL support."],
@kashif
kashif / FindM
Created September 4, 2009 21:32
# Try to find MathLink from Wolfram Mathematica package
#
# See http://www.wolfram.com/solutions/mathlink/
#
# Once run this will define:
#
# MathLink_FOUND
# MathLink_INCLUDE_DIR
# MathLink_LIBRARIES
# MathLink_MPREP_BINARY
In[1]:= Install["scalarProd"]
Out[1]= LinkObject[./scalarProd,8,7]
In[2]:= ScalarProd[{2.1,3.2},{4.3,5.4}]
Out[2]= 26.31
In[3]:= UnInstall[%1]
Out[3]= UnInstall[LinkObject[./scalarProd,8,7]]
#include <stdio.h>
#include <cutil_inline.h>
#include <mathlink.h>
///////////////////////////////////////////////////////////////////////////////
// Main program
///////////////////////////////////////////////////////////////////////////////
int main(int argc, char **argv)
{
// use command-line specified CUDA device, otherwise use device with highest Gflops/s