Skip to content

Instantly share code, notes, and snippets.

View lucasfernandes's full-sized avatar
:octocat:
Always Coding!

0xtheL lucasfernandes

:octocat:
Always Coding!
View GitHub Profile
// SPDX-License-Identifier: UNLICENSED
pragma solidity 0.8.28;
import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol";
import {Pausable} from "@openzeppelin/contracts/utils/Pausable.sol";
import {ReentrancyGuard} from "@openzeppelin/contracts/utils/ReentrancyGuard.sol";
import {IVesting} from "./interfaces/IVesting.sol";
import {ISamuraiTiers} from "./interfaces/ISamuraiTiers.sol";
// SPDX-License-Identifier: UNLINCENSED
pragma solidity 0.8.28;
import {Script} from "forge-std/Script.sol";
import {Vesting} from "../src/Vesting.sol";
import {IVesting} from "../src/interfaces/IVesting.sol";
import {console} from "forge-std/console.sol";
import {SamuraiTiers} from "../src/SamuraiTiers.sol";
import {ISamuraiTiers} from "../src/interfaces/ISamuraiTiers.sol";
import {ERC20Mock} from "../src/mocks/ERC20Mock.sol";
// MyContract constructor
constructor(address,uint256,MyInterface.MyStruct[] memory,bool,bool)
// Script used in deploy
function run() external returns (MyContract myContract) {
address someAddress = 0x...;
uint256 totalMax = 100_000 ether;
MyInterface.MyStruct[] memory strs = new MyInterface.MyStruct[](6);
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.20;
import "forge-std/Script.sol";
import "../src/Sam.sol";
contract SamScript is Script {
function run() public {
uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY");
@lucasfernandes
lucasfernandes / Extensions.swift
Last active March 5, 2021 18:27
String Extensions
extension CharacterSet {
static let vowels = CharacterSet(charactersIn: "aeiou")
static let consonants = CharacterSet.letters.subtracting(vowels)
}
extension String {
var specialChars: String {
self
.components(separatedBy: .punctuationCharacters)
@lucasfernandes
lucasfernandes / githubcurl.rb
Created May 21, 2020 17:36
Github curl actions
curl https://api.github.com/authorizations --user lucasfernandes --header "X-GitHub-OTP: 921217"
protocol ItemStoring {
associatedtype DataType
var items: [DataType] { get set }
mutating func add(item: DataType)
}
extension ItemStoring {
mutating func add(item: DataType) {
items.append(item)
/* Presentational */
import { Navigator } from 'navigation';
const App = () => (
<Provider store={store}>
<PersistGate persistor={persistor}>
<Navigator />
</PersistGate>
</Provider>
);
/* Reducers */
import { navReducer, middleware } from 'navigation';
const rootReducer = combineReducers({
nav: navReducer,
});
// Calling a separated store manager
const store = configureStore(rootReducer, rootSaga, middleware);
const rootReducer = combineReducers({
nav: navReducer,
});
...
const store = configureStore(rootReducer, rootSaga, middleware);
...