Skip to content

Instantly share code, notes, and snippets.

View hbarcelos's full-sized avatar
🕶️
I know how to exit Vim :v

Henrique Barcelos hbarcelos

🕶️
I know how to exit Vim :v
View GitHub Profile
@hbarcelos
hbarcelos / binary-tree.js
Created September 24, 2016 16:26
Tree iterators using ES6 generators
class BinaryTree {
constructor(value, left=null, right=null) {
this.value = value
this.left = left
this.right = right
}
}
#!/bin/env bash
set -euo pipefail
[ -z "$1" ] && {
cat <<USAGE
Usage:
$0 <ilk> [--estimate]
USAGE
@hbarcelos
hbarcelos / RwaLiquidationOracle2.sol
Last active March 22, 2022 20:07
RwaLiquidationOracle2 and RwaUrn2
// Copyright (C) 2020, 2021 Lev Livnev <lev@liv.nev.org.uk>
// Copyright (C) 2022 Dai Foundation
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
@hbarcelos
hbarcelos / LightCurate_Brainstorming.md
Last active October 4, 2021 18:48
LightCurate Brainstorming

Current:

struct Item {
  Status status; // The current status of the item.
  Request[] requests; // List of status change requests made for the item in the form requests[requestID].
}

struct Request {
   bool disputed; // True if a dispute was raised.
@hbarcelos
hbarcelos / CustomSlider.jsx
Created November 27, 2019 22:19
`react-hook-form` wrapper for Material UI Slider component
import React, { useEffect, useCallback, useState, useMemo } from 'react';
import t from 'prop-types';
import clsx from 'clsx';
import { makeStyles } from '@material-ui/core/styles';
import Box from '@material-ui/core/Box';
import Slider from '@material-ui/core/Slider';
const useStyles = makeStyles(theme => ({
sliderWrapper: {},
sliderLabel: {
@hbarcelos
hbarcelos / Constants.sol
Created June 24, 2021 18:44
Solidity Constants Initialization
pragma solidity ^0.8.0;
contract Contants {
uint256 public constant A = 10;
uint256 public constant B = 20;
uint256 public constant C = B/A;
}
@hbarcelos
hbarcelos / README.md
Created March 23, 2021 16:42
IPFS Cluster Example with IPFS Proxy Enabled

This example is adapted from the docker-compose file on IPFS Cluster repo.

It enables the usage of the IPFS Proxy API for clusters.

This API automatically pins content to all nodes in the cluster when /add is called.

@hbarcelos
hbarcelos / RealitioHomeArbitrationProxy.sol
Created October 22, 2020 15:15
Realitio Home Arbitration Proxy (fixed)
// File: src/dependencies/IAMB.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.7.2;
interface IAMB {
function requireToPassMessage(
address _contract,
bytes memory _data,
uint256 _gas
@hbarcelos
hbarcelos / keybase.md
Created October 19, 2020 20:37
Keybase Proof

Keybase proof

I hereby claim:

  • I am hbarcelos on github.
  • I am hbarcelos (https://keybase.io/hbarcelos) on keybase.
  • I have a public key ASDXXwdVi-W2TfqEWMFIO6V7uEdAvwN1B_bGUG1bk1jj-Qo

To claim this, I am signing this object:

@hbarcelos
hbarcelos / RealitioHomeArbitrationProxy.sol
Created October 15, 2020 14:32
Cross-chain Realitio Arbitration
// SPDX-License-Identifier: MIT
// File: src/dependencies/IAMB.sol
pragma solidity ^0.7.2;
interface IAMB {
function requireToPassMessage(
address _contract,
bytes memory _data,
uint256 _gas
) external returns (bytes32);