Skip to content

Instantly share code, notes, and snippets.

View jonasraoni's full-sized avatar
☠️
Do what you want cause a pirate is free! You are a pirate!

Jonas Raoni Soares da Silva jonasraoni

☠️
Do what you want cause a pirate is free! You are a pirate!
View GitHub Profile
@jonasraoni
jonasraoni / bitwise-pascal.pas
Created October 23, 2017 14:12
Functions to set/get bits on a DWord
function GetBit(const Value: DWord; const Bit: Byte): Boolean;
begin
Result := (Value and (1 shl Bit)) <> 0;
end;
function EnableBit(const Value: DWord; const Bit: Byte; const TurnOn: Boolean): DWord;
begin
Result := (Value or (1 shl Bit)) xor (Integer(not TurnOn) shl Bit);
end;
@jonasraoni
jonasraoni / align.c
Created October 25, 2017 22:59
Displays the memory alignment of each data type.
#include <stdio.h>
#define ALIGN_OF(t) ((int)(sizeof(struct{char c; t x;}) - sizeof(t)))
int main()
{
printf("char: %d\n", ALIGN_OF(char));
printf("short: %d\n", ALIGN_OF(short));
printf("int: %d\n", ALIGN_OF(int));
printf("long: %d\n", ALIGN_OF(long));
var _, D;
(_ = function(){return this["trela".match(/\w/g)["reverse"]().join("")];})[false] = "jonas";
_()(_[ (_(_)===D )]);
@jonasraoni
jonasraoni / sql-server-paging.cs
Created November 4, 2017 08:52
Transforms a simple SQL Server SELECT statement into a pageable statement.
using System;
using System.Text.RegularExpressions;
namespace Raoni {
public static class Utils {
private string queryLimit(string query, uint limit, uint? offset) {
if(limit > 0) {
offset = offset == null ? 0 : offset;
if(offset < 0)
throw new Exception("LIMIT argument offset=" + offset + " is not valid");
@jonasraoni
jonasraoni / sql-server-find-missing-indexes.sql
Last active November 4, 2017 09:28
SQL Server SELECT statement to find foreign keys that are missing indexes
SELECT
C.Table_Name,
C.Constraint_Name,
C.Constraint_Columns
FROM
(
SELECT
object_name(i.object_id) table_name, i.name index_name,
MAX(CASE index_column_id when 1 THEN col_name(ic.object_id,ic.column_id) ELSE '' END) +
MAX(CASE index_column_id when 2 THEN col_name(ic.object_id,ic.column_id) ELSE '' END) +
@jonasraoni
jonasraoni / Extends.cs
Created November 4, 2017 09:58
Some C# extensions.
using System;
using System.IO;
using System.Web;
using System.Text;
using System.Collections.Generic;
using System.Collections;
namespace Raoni {
public delegate bool Generator<T>(out T value);
public delegate bool Enumerator<T>(T value);
@jonasraoni
jonasraoni / increment.js
Last active March 8, 2018 22:55
A variable that increments itself whenever it's accessed.
class Increment{
constructor(value) {
this.current = +value || 0;
};
[Symbol.toPrimitive]() {
return ++this.current;
}
}
var increment = new Increment();

Keybase proof

I hereby claim:

  • I am jonasraoni on github.
  • I am jonasraoni (https://keybase.io/jonasraoni) on keybase.
  • I have a public key whose fingerprint is C6B8 2A63 2F58 4784 159E 802F 5ECC 07E6 0269 4752

To claim this, I am signing this object:

@jonasraoni
jonasraoni / cross-query.sql
Created May 10, 2018 18:12
Microsoft SQL Server Management Studio: Add external server and query against local databases.
EXEC sp_addlinkedserver @server='SERVER_ADDRESS';
EXEC sp_addlinkedsrvlogin @rmtsrvname='SERVER_ADDRESS',@useself=false, @rmtuser='USER', @rmtpassword='PASSWORD';
--------------
INSERT INTO LOCAL_TABLE
SELECT *
FROM
[SERVER_ADDRESS].DATABASE.dbo.REMOTE_TABLE
@jonasraoni
jonasraoni / update.sql
Last active February 24, 2019 11:28
Fill the gaps in SQL Server
/*
There is a table in database. This table contains unduplicated natural numbers. There may be gaps in the sequence of natural numbers in the table. You need to output missing numbers.
Table of natural numbers: declare @values as table ([number] int not null).
Test data: insert into @values([number]) values (1), (2), (3), (5), (9).
Result: declare @missing as table ([left] int not null, [right] int not null).
*/
DECLARE @values AS TABLE ([number] INT NOT NULL);
INSERT INTO @values([number]) VALUES (1), (2), (3), (5), (9);
DECLARE @missing AS TABLE ([left] INT NOT NULL, [right] INT NOT NULL)