Skip to content

Instantly share code, notes, and snippets.

View azami's full-sized avatar
🤢
お金がほしい!!!!!

az azami

🤢
お金がほしい!!!!!
  • japan
View GitHub Profile
@azami
azami / memo.md
Created December 9, 2021 00:34
Makefileをタスクランナーとして使う場合のあれこれ

Makefileをタスクランナーとして使う場合のあれこれ

休み中ずっと考えるのも嫌なので、書き殴って供養する

前提

  • 自分のローカル環境で動かすことについて記載している
  • これは個人の見解であり、異論反論は多々あると思う
  • Makefileをタスクランナーとして使うことへの異議はない。使いたい人は使えば良いし、そういうコードを排除する気持ちはない。
@azami
azami / example.kt
Created January 24, 2021 23:20
Kotlin val上書き
val field = ImageCreative::class.java.superclass.getDeclaredField("id")
field.trySetAccessible()
field.set(creative, id)
@azami
azami / CollectionTypeDescriptor.kt
Created September 8, 2020 07:08
PostgreSQL + JPA + Hibernate Set<Enum> (Collection) Descriptor
import com.vladmihalcea.hibernate.type.array.internal.AbstractArrayTypeDescriptor
import com.vladmihalcea.hibernate.type.array.internal.ArrayUtil
import org.hibernate.type.descriptor.WrapperOptions
import org.hibernate.type.descriptor.java.MutableMutabilityPlan
class CollectionMutableMutabilityPlan<T> : MutableMutabilityPlan<Collection<T>?>() {
override fun deepCopyNotNull(value: Collection<T>?): Collection<T>? {
return value?.map { it }
}
@azami
azami / foo.kt
Created May 8, 2020 06:01
kotlin pythonの__new__みたいなやつ
open class DayOfTheWeek {
var s = 0
constructor() {
this.s = 0
}
constructor(foo: Int) {
this.s = foo
}
@azami
azami / sample.ts
Created October 30, 2018 04:16
timer
const timeout = (ms: number) =>
new Promise(resolve => setTimeout(resolve, ms));
@azami
azami / example.test.ts
Last active October 22, 2018 09:09
ページネーションのページ計算
import * as assert from "power-assert";
import { getPagesToShow } from "../pagenation";
describe("getPagesToShow", () => {
it("ページがmaxNumより少ない場合", () => {
assert.deepEqual(getPagesToShow(1, 3, 5), [1, 2, 3]);
});
it("7ページ中1ページ目", () => {
assert.deepEqual(getPagesToShow(1, 7, 5), [1, 2, 3, 4, 5]);
@azami
azami / sample.js
Created October 17, 2018 02:59
JavascriptのObjectを.つなぎで指定して値を取得する
const keys = 'bar.baz'.split('.');
const foo = {foo: {bar: {baz: 123}}};
keys.reduce(((acc, cur) => acc[cur]), foo.foo);
@azami
azami / sample.js
Last active March 7, 2018 08:59
エクセルのコピペされたセルをいいかんじにパースしたい
function parse(data) {
function unescapeQuote(string) {
return string
.replace(/""/, '"')
.replace(/^"/, '')
.replace(/"$/, '');
}
const parsed = [];
data.replace(/\r/g, '\n')
@azami
azami / sample.py
Last active October 11, 2020 12:18
SQLAlchemy Core Sample with relationship and polymorphic
# -*- coding: utf-8 -*-
from sqlalchemy import create_engine, func
from sqlalchemy import Table, Column, Integer, String, DateTime, MetaData, ForeignKey
from sqlalchemy.pool import NullPool
from sqlalchemy.orm import mapper, sessionmaker, relationship
params = {'user': 'admin',
'password': 'password',
'host': 'localhost',
@azami
azami / sample.py
Created May 12, 2017 07:55
logger stdout stderr 出し分け
import logging
import sys
class StdoutFilter(logging.Filter):
def filter(self, record):
return record.levelno < logging.WARNING
class StderrFilter(logging.Filter):