Gitの中身を説明してみる
- Gitではソースコードのツリー構造をグラフデータベースで管理している
Git用語 | ファイルシステム | graph用語 |
---|---|---|
blob | ファイル内容 | エッジ |
tree | ディレクトリ | ノード |
package models | |
import scalikejdbc._ | |
import skinny.orm.{SkinnyCRUDMapper, SkinnyRecord} | |
case class Example( id: Long, name: Option[String] = None ) extends SkinnyRecord[Example] { | |
def skinnyCRUDMapper = Example | |
} | |
object Example extends SkinnyCRUDMapper[Example] { |
import scala.Predef.; | |
import scala.Serializable; | |
import scala.collection.immutable.Range.Inclusive; | |
import scala.runtime.AbstractFunction1; | |
import scala.runtime.BoxedUnit; | |
import scala.runtime.RichInt.; | |
public final class Hello$ | |
{ | |
public static final MODULE$; |
val xml = | |
<body> | |
<item> | |
<name>aaaaa</name> | |
<url>httpppppp</url> | |
<description>cccc</description> | |
</item> | |
<item> | |
<name>aaaaa</name> | |
<url>httpppppp</url> |
// 失敗する処理 | |
def fail(i: Int): Either[String,Int] = Left(s"error occored from $i") | |
// 成功する処理 | |
def success(i: Int): Either[String,Int] = Right(i + 1) | |
println("すべて成功する (e is 5)") | |
val result0 = for { | |
a <- success(0).right | |
b <- success(a).right |
type Database = Map[String, Any] | |
case class Item[+A](name: String) { | |
def get(d: Database) = d(name).asInstanceOf[A] | |
} | |
implicit class DB(val d: Database) extends AnyVal { | |
def get[A](n: Item[A]): A = n.get(d) | |
} |
import scala.swing._ | |
object Hello extends SimpleSwingApplication { | |
def top = new MainFrame { | |
title = "Hello world" | |
contents = new Label("Hello world") | |
} | |
} |
module Kernel | |
def maybe | |
block_given? && yield | |
rescue NoMethodError | |
end | |
end |
class Maybe < BasicObject | |
def initialize(obj) | |
@just = obj | |
end | |
# for debug | |
def inspect | |
"#<Maybe: just(#{@just.inspect})>" | |
end |
fizzbuzz = ->(i){ i % 3 == 0 && i % 5 == 0 ? 'FizzBuzz' : i } | |
fizz = ->(i){ i % 3 == 0 ? 'Fizz' : i } | |
buzz = ->(i){ i % 5 == 0 ? 'Buzz' : i } | |
(1..16).map(&fizzbuzz).map(&fizz).map(&buzz) |
Gitの中身を説明してみる
Git用語 | ファイルシステム | graph用語 |
---|---|---|
blob | ファイル内容 | エッジ |
tree | ディレクトリ | ノード |