##何これ なんとなく使えそうなコードのまとめ
##一覧
integral_sequence.hpp VS2015のmake_integer_sequenceがファッキンだったので作った
memoization.hppメモ化してくれるアレを作った
plasma.ADTC++でも代数データ型ができる
#pragma once | |
// Copyright plasma-effect 2015 | |
// Distributed under the Boost Software License, Version 1.0. | |
// (See http://www.boost.org/LICENSE_1_0.txt) | |
namespace plasma | |
{ | |
namespace polynomial_types | |
{ |
#pragma once | |
#include<type_traits> | |
// Copyright plasma-effect 2015 | |
// Distributed under the Boost Software License, Version 1.0. | |
// (See http://www.boost.org/LICENSE_1_0.txt) | |
namespace plasma | |
{ |
#pragma once | |
// Copyright plasma-effect 2015 | |
// Distributed under the Boost Software License, Version 1.0. | |
// (See http://www.boost.org/LICENSE_1_0.txt) | |
#include<type_traits> | |
#include<utility> | |
namespace plasma |
#pragma once | |
// Copyright plasma-effect 2015 | |
// Distributed under the Boost Software License, Version 1.0. | |
// (See http://www.boost.org/LICENSE_1_0.txt) | |
#include<type_traits> | |
#include<tuple> | |
namespace plasma |
#pragma once | |
// Copyright plasma-effect 2015 | |
// Distributed under the Boost Software License, Version 1.0. | |
// (See http://www.boost.org/LICENSE_1_0.txt) | |
#include<type_traits> | |
namespace plasma | |
{ | |
namespace proof_system |
module Parser | |
//Copyright (c) 2015 plasma-effect | |
// | |
//Permission is hereby granted, free of charge, to any person obtaining a copy | |
//of this software and associated documentation files (the "Software"), to deal | |
//in the Software without restriction, including without limitation the rights | |
//to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
//copies of the Software, and to permit persons to whom the Software is | |
//furnished to do so, subject to the following conditions: |
#pragma once | |
#ifndef PLASMA_MEMOIZATION | |
#define PLASMA_MEMOIZATION | |
// Copyright plasma-effect 2015 | |
// Distributed under the Boost Software License, Version 1.0. | |
// (See http://www.boost.org/LICENSE_1_0.txt) | |
#include<vector> | |
#include<tuple> |
module Memoization | |
module Detail = | |
type Optional<'a> = None | Value of 'a | |
let GetData<'T, 'U when 'T:equality> (target: 'T) (dic: System.Collections.Generic.List<('T*'U)>)= | |
let mutable ret = None | |
for (x, y) in dic do if x=target then ret<-Value(y) else () | |
ret | |
type Memoization<'T,'U when 'T:equality>()= |
#pragma once | |
#ifndef PLASMA_ALGEBRAIC_DATA_TYPE | |
#define PLASMA_ALGEBRAIC_DATA_TYPE | |
// Copyright plasma-effect 2015 | |
// Distributed under the Boost Software License, Version 1.0. | |
// (See http://www.boost.org/LICENSE_1_0.txt) | |
#include<tuple> | |
#include<memory> |
##何これ なんとなく使えそうなコードのまとめ
##一覧
integral_sequence.hpp VS2015のmake_integer_sequenceがファッキンだったので作った
memoization.hppメモ化してくれるアレを作った
plasma.ADTC++でも代数データ型ができる