fibs 1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/.gitignore ADDED
@@ -0,0 +1,4 @@
1
+ *.gem
2
+ .bundle
3
+ Gemfile.lock
4
+ pkg/*
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in fibs.gemspec
4
+ gemspec
data/README.md ADDED
@@ -0,0 +1,32 @@
1
+ As a command
2
+
3
+ $ fibs 10
4
+ 1
5
+ 1
6
+ 2
7
+ 3
8
+ 5
9
+ 8
10
+ 13
11
+ 21
12
+ 34
13
+ 55
14
+
15
+ As a library
16
+
17
+ require 'fibs'
18
+ p Fibs.(10)
19
+ #=> [1, 1, 2, ..., 55]
20
+
21
+ Or
22
+
23
+ require 'fibs'
24
+ p Fibs.new(1, 1).take(10)
25
+ #=> [1, 1, 2, ..., 55]
26
+
27
+ Or
28
+
29
+ require 'fibs'
30
+ Fibs.new(1, 1).each do |x|
31
+ ...
32
+ end
data/Rakefile ADDED
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
data/bin/fibs ADDED
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ $: << File.dirname(File.expand_path(__FILE__)) + '/../lib/'
3
+ require 'fibs'
4
+ puts Fibs.(ARGV.shift.to_i)
data/fibs.gemspec ADDED
@@ -0,0 +1,24 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "fibs/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "fibs"
7
+ s.version = Fibs::VERSION
8
+ s.authors = ["ujihisa"]
9
+ s.email = ["ujihisa at gmail.com"]
10
+ s.homepage = ""
11
+ s.summary = %q{Get Fibonacci sequence!}
12
+ s.description = %q{Get Fibonacci sequence!}
13
+
14
+ s.rubyforge_project = "fibs"
15
+
16
+ s.files = `git ls-files`.split("\n")
17
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
+ s.require_paths = ["lib"]
20
+
21
+ # specify any dependencies here; for example:
22
+ # s.add_development_dependency "rspec"
23
+ # s.add_runtime_dependency "rest-client"
24
+ end
data/lib/fibs.rb ADDED
@@ -0,0 +1,20 @@
1
+ require "fibs/version"
2
+
3
+ class Fibs
4
+ include Enumerable
5
+
6
+ def self.call(n)
7
+ Fibs.new(1, 1).take(n)
8
+ end
9
+
10
+ def initialize(seed1, seed2)
11
+ @a, @b = [seed1, seed2]
12
+ end
13
+
14
+ def each
15
+ loop do
16
+ yield @a
17
+ @a, @b = [@b, @a + @b]
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,3 @@
1
+ class Fibs
2
+ VERSION = '1.0'
3
+ end
metadata ADDED
@@ -0,0 +1,54 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: fibs
3
+ version: !ruby/object:Gem::Version
4
+ version: '1.0'
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - ujihisa
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2011-11-12 00:00:00.000000000 Z
13
+ dependencies: []
14
+ description: Get Fibonacci sequence!
15
+ email:
16
+ - ujihisa at gmail.com
17
+ executables:
18
+ - fibs
19
+ extensions: []
20
+ extra_rdoc_files: []
21
+ files:
22
+ - .gitignore
23
+ - Gemfile
24
+ - README.md
25
+ - Rakefile
26
+ - bin/fibs
27
+ - fibs.gemspec
28
+ - lib/fibs.rb
29
+ - lib/fibs/version.rb
30
+ homepage: ''
31
+ licenses: []
32
+ post_install_message:
33
+ rdoc_options: []
34
+ require_paths:
35
+ - lib
36
+ required_ruby_version: !ruby/object:Gem::Requirement
37
+ none: false
38
+ requirements:
39
+ - - ! '>='
40
+ - !ruby/object:Gem::Version
41
+ version: '0'
42
+ required_rubygems_version: !ruby/object:Gem::Requirement
43
+ none: false
44
+ requirements:
45
+ - - ! '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ requirements: []
49
+ rubyforge_project: fibs
50
+ rubygems_version: 1.8.11
51
+ signing_key:
52
+ specification_version: 3
53
+ summary: Get Fibonacci sequence!
54
+ test_files: []