walk_up 0.0.10 → 0.0.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/walk_up.rb +21 -1
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7d4f43a29d678901a4e00539c603389e1f4becfb632d4029d70eafbdb893fa73
4
- data.tar.gz: b8d501409f6853eda9a332177c8b5f418c29cfb9a91bfafc4c4ab49edc7e991c
3
+ metadata.gz: 1682cc294cec6c48260095c64f8cb8ce89504f568a92113f207ea449a0b4af1a
4
+ data.tar.gz: 73793b437dd3b3b076687897c040afa475a58bdbeeed5e9aa5e666fe752a96ef
5
5
  SHA512:
6
- metadata.gz: 0ee2b1f3bbc1520953701db39de56817802a9d165fea12f86aab19c089e9bc6a10ff73cb9a4e9576b75261602321c15bce60d7050a526f286f0835cedca5e9ac
7
- data.tar.gz: 2197e511d39754b9e1ab94af12f688bbca84ffbe1e4219b257007348542082cb62e526ef0fe97070eb954e6e32e2cba84f1236a10c4a184bd4883de66857e3c2
6
+ metadata.gz: 2c93ad6e45760152065346c28e2a8a8fe0495b1986a4590c65d72674a8b00a77f25658872575adf9a737259052d52a0fb0e956c683b9c8f4637e34e0a98ddbd9
7
+ data.tar.gz: 2e43b283a809c1ea3c882460f89ba0ece2c3ef450a2a2600a591a6d45c7c97a915855bc2689b32f8720fdc1658c7552eb45839ff147f14c5e4e1f336c510dec3
data/lib/walk_up.rb CHANGED
@@ -1,3 +1,23 @@
1
1
  # frozen_string_literal: true
2
+ require "pathname"
2
3
 
3
- puts "You found main!"
4
+ def walk_up(file_to_find, start_path=nil)
5
+ here = start_path || Dir.pwd
6
+ # if absolute
7
+ if not Pathname.new(here).absolute?
8
+ here = File.join(Dir.pwd, here)
9
+ end
10
+ loop do
11
+ check_path = File.join(here, file_to_find)
12
+ if File.exist?(check_path)
13
+ return here
14
+ end
15
+ # reached the top
16
+ if here == File.dirname(here)
17
+ return nil
18
+ # else go up one and try again
19
+ else
20
+ here = File.dirname(here)
21
+ end
22
+ end
23
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: walk_up
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.10
4
+ version: 0.0.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Hykin