fancy-p 0.4.0 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +0 -19
- data/lib/fancy-p/kernel_ext.rb +11 -12
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 74e162fbcd8bb11087d9ca029f8e031d0bb7e276b9c1a16930ea7074e099a98c
|
4
|
+
data.tar.gz: 03f5a5b646843af88597621608efaaa211c7f2720bd51853fbbd15d1f9ccc400
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7dce6f3696199d32f9af8c9e050bbaa626fbcd9f508eb403f8000cf0eaa53fce4ed342d849b2739d5aea176cf04373cfe5d87ce0beec4266b3906834c8717002
|
7
|
+
data.tar.gz: aac526ca052709f0fb420e1c6f9f1cf237d31b2f144550e9d83ae5f118d652e750d4e6cbc4535cdcd2b3844a06b1853d1b7779b9e8d34496a3281a74a3322636
|
data/README.md
CHANGED
@@ -66,22 +66,3 @@ print_wat['Some other string']
|
|
66
66
|
# => "Some other string"
|
67
67
|
# => "WAT WAT WAT WAT WAT WAT WAT WAT WAT WAT "
|
68
68
|
```
|
69
|
-
|
70
|
-
|
71
|
-
## In a Rails Project
|
72
|
-
|
73
|
-
To automatically load and initialize the gem in a Rails project, follow these steps:
|
74
|
-
|
75
|
-
1. Add the gem to your Gemfile:
|
76
|
-
```ruby
|
77
|
-
gem 'fancy-p'
|
78
|
-
```
|
79
|
-
|
80
|
-
2. Run `bundle install`
|
81
|
-
|
82
|
-
3. Create an initializer file in `config/initializers/fancy_p.rb` and add the following code:
|
83
|
-
```ruby
|
84
|
-
require 'fancy-p'
|
85
|
-
```
|
86
|
-
|
87
|
-
Now you can use the dynamic print methods anywhere in your Rails application, including controllers, models, views, and the Rails console.
|
data/lib/fancy-p/kernel_ext.rb
CHANGED
@@ -1,28 +1,21 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module Kernel
|
4
|
-
def method_missing(method_name, *args, &)
|
4
|
+
def method_missing(method_name, *args, &block)
|
5
5
|
super unless method_name.to_s =~ /^p.$/
|
6
6
|
|
7
|
-
|
7
|
+
define_singleton_method(method_name) do |*forwarded_args|
|
8
8
|
char = method_name.to_s[1]
|
9
|
-
|
9
|
+
fp(char, *forwarded_args)
|
10
10
|
end
|
11
11
|
send(method_name, *args)
|
12
12
|
end
|
13
13
|
|
14
|
-
def print_surrounding(str, *args, length: 100)
|
15
|
-
delimiter = str * length
|
16
|
-
p delimiter
|
17
|
-
p(*args)
|
18
|
-
p delimiter
|
19
|
-
end
|
20
|
-
|
21
14
|
def fp(str, *args, length: 100)
|
22
15
|
delimiter = str * length
|
23
|
-
|
16
|
+
puts delimiter
|
24
17
|
p(*args)
|
25
|
-
|
18
|
+
puts delimiter
|
26
19
|
end
|
27
20
|
|
28
21
|
def fp_factory(str, length: 100)
|
@@ -30,4 +23,10 @@ module Kernel
|
|
30
23
|
fp(str, *args, length:)
|
31
24
|
}
|
32
25
|
end
|
26
|
+
|
27
|
+
def fp_define(str, length: 100, method_name: str.strip)
|
28
|
+
define_singleton_method("fp_#{method_name.strip}") do |*args|
|
29
|
+
fp(str, *args, length:)
|
30
|
+
end
|
31
|
+
end
|
33
32
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fancy-p
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tyler Rhodes
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-08-06 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: |-
|
14
14
|
This gem extends the Kernel module to dynamically define
|