alki-support 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 2154479b101fa45965a285e34f6b6e363e4e8e77
4
+ data.tar.gz: 4777bd20087b31974d40e14358710ec5d8deb285
5
+ SHA512:
6
+ metadata.gz: 0aed4bac3d7fd8df1e9098a1d2021ac50f97fbc9146def685eac94ca78b7a45dcda7ff5313861829fd4db2d3191669696e1a1ba2b476916a7e36907c6976db4c
7
+ data.tar.gz: 59ed3f0b2a30ea02455faf812b58c08d55368d38205140213d0c83e9e4fa83ca69161aed0122a369efac86d4d5607881dc5ab9599c2d6f805b7ea0954ae5eb0d
@@ -0,0 +1,53 @@
1
+ # Created by .ignore support plugin (hsz.mobi)
2
+ ### Ruby template
3
+ *.gem
4
+ *.rbc
5
+ /.config
6
+ /coverage/
7
+ /InstalledFiles
8
+ /pkg/
9
+ /spec/reports/
10
+ /spec/examples.txt
11
+ /test/tmp/
12
+ /test/version_tmp/
13
+ /tmp/
14
+
15
+ # Used by dotenv library to load environment variables.
16
+ # .env
17
+
18
+ ## Specific to RubyMotion:
19
+ .dat*
20
+ .repl_history
21
+ build/
22
+ *.bridgesupport
23
+ build-iPhoneOS/
24
+ build-iPhoneSimulator/
25
+
26
+ ## Specific to RubyMotion (use of CocoaPods):
27
+ #
28
+ # We recommend against adding the Pods directory to your .gitignore. However
29
+ # you should judge for yourself, the pros and cons are mentioned at:
30
+ # https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
31
+ #
32
+ # vendor/Pods/
33
+
34
+ ## Documentation cache and generated files:
35
+ /.yardoc/
36
+ /_yardoc/
37
+ /doc/
38
+ /rdoc/
39
+
40
+ ## Environment normalization:
41
+ /.bundle/
42
+ /vendor/bundle
43
+ /lib/bundler/man/
44
+
45
+ # for a library or gem, you might want to ignore these files since the code is
46
+ # intended to run in multiple environments; otherwise, check them in:
47
+ # Gemfile.lock
48
+ # .ruby-version
49
+ # .ruby-gemset
50
+
51
+ # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
52
+ .rvmrc
53
+
@@ -0,0 +1,19 @@
1
+ # coding: utf-8
2
+ require_relative 'lib/alki/support/version'
3
+
4
+ Gem::Specification.new do |spec|
5
+ spec.name = "alki-support"
6
+ spec.version = Alki::Support::VERSION
7
+ spec.authors = ["Matt Edlefsen"]
8
+ spec.email = ["matt.edlefsen@gmail.com"]
9
+ spec.summary = %q{Alki support methods}
10
+ spec.description = %q{Various helper methods for Alki}
11
+ spec.homepage = "https://github.com/medlefsen/alki-support"
12
+ spec.license = "MIT"
13
+
14
+ spec.files = `git ls-files -z`.split("\x0")
15
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
16
+ spec.bindir = 'exe'
17
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
+ spec.require_paths = ["lib"]
19
+ end
@@ -0,0 +1,55 @@
1
+ require 'alki/support/version'
2
+
3
+ module Alki
4
+ module Support
5
+ def self.load_class(klass)
6
+ if klass.is_a?(String)
7
+ name = klass
8
+ class_name = classify klass
9
+ klass = constantize class_name
10
+ unless klass
11
+ require name
12
+ klass = constantize class_name
13
+ end
14
+ end
15
+ klass
16
+ end
17
+
18
+ def self.classify(str)
19
+ str.split('/').map do |c|
20
+ c.split('_').map{|n| n.capitalize }.join('')
21
+ end.join('::')
22
+ end
23
+
24
+ def self.constantize(name)
25
+ name.split('::').inject(Object) do |obj,el|
26
+ return nil unless obj.const_defined? el, false
27
+ obj.const_get el, false
28
+ end
29
+ end
30
+
31
+ def self.caller_path(root,caller_depth: 1)
32
+ path = caller_locations(caller_depth+1,1)[0].absolute_path
33
+ path_name path, root
34
+ end
35
+
36
+ def self.path_name(path,root=File.dirname(path))
37
+ root = File.join(root,'')
38
+ if path.start_with?(root) && path.end_with?('.rb')
39
+ path[root.size..-4]
40
+ end
41
+ end
42
+
43
+ def self.find_root(path)
44
+ old_dir = File.absolute_path(path)
45
+ dir = File.dirname(old_dir)
46
+ until dir == old_dir || yield(dir)
47
+ old_dir = dir
48
+ dir = File.dirname(old_dir)
49
+ end
50
+ if dir != old_dir
51
+ dir
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,5 @@
1
+ module Alki
2
+ module Support
3
+ VERSION = '0.5.0'
4
+ end
5
+ end
metadata ADDED
@@ -0,0 +1,48 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: alki-support
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.5.0
5
+ platform: ruby
6
+ authors:
7
+ - Matt Edlefsen
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2016-12-02 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Various helper methods for Alki
14
+ email:
15
+ - matt.edlefsen@gmail.com
16
+ executables: []
17
+ extensions: []
18
+ extra_rdoc_files: []
19
+ files:
20
+ - ".gitignore"
21
+ - alki-support.gemspec
22
+ - lib/alki/support.rb
23
+ - lib/alki/support/version.rb
24
+ homepage: https://github.com/medlefsen/alki-support
25
+ licenses:
26
+ - MIT
27
+ metadata: {}
28
+ post_install_message:
29
+ rdoc_options: []
30
+ require_paths:
31
+ - lib
32
+ required_ruby_version: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: '0'
37
+ required_rubygems_version: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ version: '0'
42
+ requirements: []
43
+ rubyforge_project:
44
+ rubygems_version: 2.5.1
45
+ signing_key:
46
+ specification_version: 4
47
+ summary: Alki support methods
48
+ test_files: []