fancy-p 0.4.0 → 0.5.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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +0 -19
  3. data/lib/fancy-p/kernel_ext.rb +11 -12
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 48d21fa983878e6759eddc0db9fec1e940bcd26eda49d69d800c2a9813e448b5
4
- data.tar.gz: 14ef6c60f41890099f102476ae46b77d6539b63dc0b32e32aa33f0eb6b9bcf95
3
+ metadata.gz: 74e162fbcd8bb11087d9ca029f8e031d0bb7e276b9c1a16930ea7074e099a98c
4
+ data.tar.gz: 03f5a5b646843af88597621608efaaa211c7f2720bd51853fbbd15d1f9ccc400
5
5
  SHA512:
6
- metadata.gz: 8fc64b440dfc9d62bfff84c0bf9608d51911444ac81aa3d1cb1de22d7512d6077e3284eb734937896f88df944738481cf7e1c8a98c6c6958dedfec12ec2055a5
7
- data.tar.gz: 16e431de47b80efec215e51c3b8104c4818e79539742ba7b037fbb24306b62ee6e4e2e5e30ac374e5acde6e44e34c8b89f2030337a82e35f4d429a2a584f57de
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.
@@ -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
- self.class.define_method(method_name) do |*forwarded_args|
7
+ define_singleton_method(method_name) do |*forwarded_args|
8
8
  char = method_name.to_s[1]
9
- print_surrounding(char, *forwarded_args)
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
- p delimiter
16
+ puts delimiter
24
17
  p(*args)
25
- p delimiter
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.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-07-15 00:00:00.000000000 Z
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