tbpgr_utils 0.0.44 → 0.0.45
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/README.md +33 -1
- data/lib/open_classes/string/say.rb +47 -0
- data/lib/open_classes/string.rb +1 -0
- data/lib/tbpgr_utils/version.rb +1 -1
- data/spec/open_classes/string/say_spec.rb +71 -0
- metadata +15 -12
data/README.md
CHANGED
@@ -66,7 +66,7 @@ Or install it yourself as:
|
|
66
66
|
|[TbpgrUtils Kernel#print_eval](#kernelprint_eval) |Print code + eval result |
|
67
67
|
|[TbpgrUtils Kernel#puts_eval](#kernelputs_eval) |Puts code + eval result |
|
68
68
|
|[TbpgrUtils Kernel#bulk_puts_eval](#kernelbulk_puts_eval) |Puts each-line-code + eval result |
|
69
|
-
|[MetasyntacticVariable](#metasyntacticvariable)
|
69
|
+
|[MetasyntacticVariable](#metasyntacticvariable) |META variable, META variable for classes |
|
70
70
|
|[TbpgrUtils Module.alias_methods](#modulealias_methods) |create alias methods |
|
71
71
|
|[TbpgrUtils Object#any_of?](#objectany_of) |if self match any one of items, return true |
|
72
72
|
|[TbpgrUtils Object#boolean?](#objectboolean) |data type check for boolean |
|
@@ -75,6 +75,7 @@ Or install it yourself as:
|
|
75
75
|
|[TbpgrUtils Object#my_methods](#objectmy_methods) |return public/protected/private self define methods |
|
76
76
|
|[TbpgrUtils Object#to_bool](#objectto_bool) |syntax sugar of !!. convert [false, nil] => fasel, other => true. |
|
77
77
|
|[TbpgrUtils String#justify_table](#stringjustify_table) |justify pipe format table string |
|
78
|
+
|[TbpgrUtils String#say](#stringsay) |say string |
|
78
79
|
|[TbpgrUtils String#surround](#stringsurround) |surround string |
|
79
80
|
|[Templatable module](#templatable) |get result from template + placeholder |
|
80
81
|
|[TemplateMethodable module](#templatemethodable) |for Template Method Pattern |
|
@@ -1076,6 +1077,8 @@ for single template script using __END__ and DATA
|
|
1076
1077
|
sample case
|
1077
1078
|
|
1078
1079
|
~~~ruby
|
1080
|
+
require "end_erb"
|
1081
|
+
|
1079
1082
|
def hoge
|
1080
1083
|
hash = {
|
1081
1084
|
hoge: '@hoge@',
|
@@ -1538,6 +1541,34 @@ output
|
|
1538
1541
|
|
1539
1542
|
[back to list](#list)
|
1540
1543
|
|
1544
|
+
### String#say
|
1545
|
+
default case
|
1546
|
+
~~~ruby
|
1547
|
+
'hoge'.say # => 'hoge'
|
1548
|
+
~~~
|
1549
|
+
|
1550
|
+
quote case
|
1551
|
+
~~~ruby
|
1552
|
+
'hoge'.say(:quote) # => 'hoge'
|
1553
|
+
~~~
|
1554
|
+
|
1555
|
+
dquote case
|
1556
|
+
~~~ruby
|
1557
|
+
'hoge'.say(:dquote) # => "hoge"
|
1558
|
+
~~~
|
1559
|
+
|
1560
|
+
bracket case
|
1561
|
+
~~~ruby
|
1562
|
+
'hoge'.say(:bracket) # => [hoge]
|
1563
|
+
~~~
|
1564
|
+
|
1565
|
+
hyphen case
|
1566
|
+
~~~ruby
|
1567
|
+
'hoge'.say(:hyphen) # => -hoge-
|
1568
|
+
~~~
|
1569
|
+
|
1570
|
+
[back to list](#list)
|
1571
|
+
|
1541
1572
|
### String#surround
|
1542
1573
|
single line, no option case
|
1543
1574
|
|
@@ -1687,6 +1718,7 @@ if you are Sublime Text2 user, you can use snippet for TbpgrUtils.
|
|
1687
1718
|
https://github.com/tbpgr/tbpgr_utils_snippets
|
1688
1719
|
|
1689
1720
|
## History
|
1721
|
+
* version 0.0.45 : add String#say
|
1690
1722
|
* version 0.0.44 : add EndERB.apply
|
1691
1723
|
* version 0.0.43 : add Array#together_slice(alias tslice).
|
1692
1724
|
* version 0.0.42 : add MetasyntacticVariable
|
@@ -0,0 +1,47 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
# String
|
4
|
+
class String
|
5
|
+
# say string.
|
6
|
+
#
|
7
|
+
# ==== Options
|
8
|
+
#
|
9
|
+
# * <tt>option</tt> - quote, dquote, bracket, hyphen
|
10
|
+
#
|
11
|
+
# ==== Examples
|
12
|
+
#
|
13
|
+
# default case
|
14
|
+
#
|
15
|
+
# 'hoge'.say # => 'hoge'
|
16
|
+
#
|
17
|
+
# quote case
|
18
|
+
#
|
19
|
+
# 'hoge'.say(:quote) # => 'hoge'
|
20
|
+
#
|
21
|
+
# dquote case
|
22
|
+
#
|
23
|
+
# 'hoge'.say(:dquote) # => "hoge"
|
24
|
+
#
|
25
|
+
# bracket case
|
26
|
+
#
|
27
|
+
# 'hoge'.say(:bracket) # => [hoge]
|
28
|
+
#
|
29
|
+
# hyphen case
|
30
|
+
#
|
31
|
+
# 'hoge'.say(:hyphen) # => -hoge-
|
32
|
+
#
|
33
|
+
def say(option = :quote)
|
34
|
+
case option
|
35
|
+
when :quote
|
36
|
+
"'#{self}'"
|
37
|
+
when :dquote
|
38
|
+
"\"#{self}\""
|
39
|
+
when :bracket
|
40
|
+
"[#{self}]"
|
41
|
+
when :hyphen
|
42
|
+
"-#{self}-"
|
43
|
+
else
|
44
|
+
fail ArgumentError, "invalid value #{option}"
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
data/lib/open_classes/string.rb
CHANGED
data/lib/tbpgr_utils/version.rb
CHANGED
@@ -0,0 +1,71 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
require 'spec_helper'
|
3
|
+
require 'tbpgr_utils'
|
4
|
+
|
5
|
+
describe String do
|
6
|
+
context :say do
|
7
|
+
cases = [
|
8
|
+
{
|
9
|
+
case_no: 1,
|
10
|
+
case_title: 'default case',
|
11
|
+
input: 'hoge',
|
12
|
+
expected: "'hoge'"
|
13
|
+
},
|
14
|
+
{
|
15
|
+
case_no: 2,
|
16
|
+
case_title: 'quote case',
|
17
|
+
input: "hoge",
|
18
|
+
option: :quote,
|
19
|
+
expected: "'hoge'"
|
20
|
+
},
|
21
|
+
{
|
22
|
+
case_no: 3,
|
23
|
+
case_title: 'dquote case',
|
24
|
+
input: 'hoge',
|
25
|
+
option: :dquote,
|
26
|
+
expected: '"hoge"'
|
27
|
+
},
|
28
|
+
{
|
29
|
+
case_no: 4,
|
30
|
+
case_title: 'bracket case',
|
31
|
+
input: 'hoge',
|
32
|
+
option: :bracket,
|
33
|
+
expected: '[hoge]'
|
34
|
+
},
|
35
|
+
{
|
36
|
+
case_no: 5,
|
37
|
+
case_title: 'hyphen case',
|
38
|
+
input: 'hoge',
|
39
|
+
option: :hyphen,
|
40
|
+
expected: '-hoge-'
|
41
|
+
},
|
42
|
+
]
|
43
|
+
|
44
|
+
cases.each do |c|
|
45
|
+
it "|case_no=#{c[:case_no]}|case_title=#{c[:case_title]}" do
|
46
|
+
begin
|
47
|
+
case_before c
|
48
|
+
|
49
|
+
# -- given --
|
50
|
+
# nothing
|
51
|
+
|
52
|
+
# -- when --
|
53
|
+
actual = c[:option] ? c[:input].say(c[:option]) : c[:input].say
|
54
|
+
|
55
|
+
# -- then --
|
56
|
+
expect(actual).to eq(c[:expected])
|
57
|
+
ensure
|
58
|
+
case_after c
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
def case_before(c)
|
63
|
+
# implement each case before
|
64
|
+
end
|
65
|
+
|
66
|
+
def case_after(c)
|
67
|
+
# implement each case after
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tbpgr_utils
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.45
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-02-
|
12
|
+
date: 2014-02-21 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activesupport
|
16
|
-
requirement: &
|
16
|
+
requirement: &22871184 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 4.0.1
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *22871184
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: bundler
|
27
|
-
requirement: &
|
27
|
+
requirement: &22869852 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '1.3'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *22869852
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rake
|
38
|
-
requirement: &
|
38
|
+
requirement: &22869444 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *22869444
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rspec
|
49
|
-
requirement: &
|
49
|
+
requirement: &22868916 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 2.14.1
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *22868916
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: simplecov
|
60
|
-
requirement: &
|
60
|
+
requirement: &22868424 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,7 +65,7 @@ dependencies:
|
|
65
65
|
version: 0.8.2
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *22868424
|
69
69
|
description: Utilities
|
70
70
|
email:
|
71
71
|
- tbpgr@tbpgr.jp
|
@@ -128,6 +128,7 @@ files:
|
|
128
128
|
- lib/open_classes/object/to_bool.rb
|
129
129
|
- lib/open_classes/string.rb
|
130
130
|
- lib/open_classes/string/justify_table.rb
|
131
|
+
- lib/open_classes/string/say.rb
|
131
132
|
- lib/open_classes/string/surround.rb
|
132
133
|
- lib/tbpgr_utils.rb
|
133
134
|
- lib/tbpgr_utils/version.rb
|
@@ -178,6 +179,7 @@ files:
|
|
178
179
|
- spec/open_classes/object/my_methods_spec.rb
|
179
180
|
- spec/open_classes/object/to_bool_spec.rb
|
180
181
|
- spec/open_classes/string/justify_table_spec.rb
|
182
|
+
- spec/open_classes/string/say_spec.rb
|
181
183
|
- spec/open_classes/string/surround_spec.rb
|
182
184
|
- spec/spec_helper.rb
|
183
185
|
- spec/templatable_spec.rb
|
@@ -252,6 +254,7 @@ test_files:
|
|
252
254
|
- spec/open_classes/object/my_methods_spec.rb
|
253
255
|
- spec/open_classes/object/to_bool_spec.rb
|
254
256
|
- spec/open_classes/string/justify_table_spec.rb
|
257
|
+
- spec/open_classes/string/say_spec.rb
|
255
258
|
- spec/open_classes/string/surround_spec.rb
|
256
259
|
- spec/spec_helper.rb
|
257
260
|
- spec/templatable_spec.rb
|