rails-pg-procs 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. data/.document +5 -0
  2. data/.gitignore +5 -0
  3. data/LICENSE +20 -0
  4. data/README +15 -0
  5. data/README.rdoc +18 -0
  6. data/Rakefile +60 -0
  7. data/VERSION +1 -0
  8. data/docs/classes/ActiveRecord.html +117 -0
  9. data/docs/classes/ActiveRecord/ConnectionAdapters.html +113 -0
  10. data/docs/classes/ActiveRecord/ConnectionAdapters/PostgreSQLAdapter.html +589 -0
  11. data/docs/classes/ActiveRecord/ConnectionAdapters/ProcedureDefinition.html +110 -0
  12. data/docs/classes/ActiveRecord/ConnectionAdapters/TriggerDefinition.html +519 -0
  13. data/docs/classes/ActiveRecord/ConnectionAdapters/TypeDefinition.html +110 -0
  14. data/docs/classes/ActiveRecord/SchemaDumper.html +371 -0
  15. data/docs/classes/Inflector.html +164 -0
  16. data/docs/classes/SchemaProcs.html +211 -0
  17. data/docs/classes/SqlFormat.html +139 -0
  18. data/docs/classes/String.html +117 -0
  19. data/docs/classes/Symbol.html +117 -0
  20. data/docs/created.rid +1 -0
  21. data/docs/fr_class_index.html +36 -0
  22. data/docs/fr_method_index.html +63 -0
  23. data/docs/index.html +22 -0
  24. data/docs/rdoc-style.css +208 -0
  25. data/init.rb +3 -0
  26. data/install.rb +1 -0
  27. data/lib/connection_adapters/aggregagtes_definition.rb +1 -0
  28. data/lib/connection_adapters/connection_adapters.rb +8 -0
  29. data/lib/connection_adapters/index_definition.rb +24 -0
  30. data/lib/connection_adapters/postgresql_adapter.rb +256 -0
  31. data/lib/connection_adapters/procedure_definition.rb +6 -0
  32. data/lib/connection_adapters/schema_definition.rb +24 -0
  33. data/lib/connection_adapters/schema_statements.rb +11 -0
  34. data/lib/connection_adapters/trigger_definition.rb +114 -0
  35. data/lib/connection_adapters/type_definition.rb +17 -0
  36. data/lib/connection_adapters/view_definition.rb +34 -0
  37. data/lib/inflector.rb +10 -0
  38. data/lib/rails_pg_procs.rb +8 -0
  39. data/lib/schema_dumper.rb +96 -0
  40. data/lib/schema_procs.rb +19 -0
  41. data/lib/sql_format.rb +17 -0
  42. data/tasks/rails_pg_procs.rake +4 -0
  43. data/test/connection.rb +16 -0
  44. data/test/procedure_test.rb +78 -0
  45. data/test/rails_pg_procs_test.rb +246 -0
  46. data/test/test_helper.rb +41 -0
  47. data/test/trigger_test.rb +87 -0
  48. data/test/type_test.rb +46 -0
  49. data/test/view_test.rb +36 -0
  50. data/uninstall.rb +1 -0
  51. metadata +112 -0
@@ -0,0 +1,164 @@
1
+ <!DOCTYPE html
2
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4
+
5
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
6
+ <head>
7
+ <title>Module: Inflector</title>
8
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
9
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
10
+ <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
11
+ <script type="text/javascript">
12
+ // <![CDATA[
13
+
14
+ function popupCode( url ) {
15
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
16
+ }
17
+
18
+ function toggleCode( id ) {
19
+ if ( document.getElementById )
20
+ elem = document.getElementById( id );
21
+ else if ( document.all )
22
+ elem = eval( "document.all." + id );
23
+ else
24
+ return false;
25
+
26
+ elemStyle = elem.style;
27
+
28
+ if ( elemStyle.display != "block" ) {
29
+ elemStyle.display = "block"
30
+ } else {
31
+ elemStyle.display = "none"
32
+ }
33
+
34
+ return true;
35
+ }
36
+
37
+ // Make codeblocks hidden by default
38
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
39
+
40
+ // ]]>
41
+ </script>
42
+
43
+ </head>
44
+ <body>
45
+
46
+
47
+
48
+ <div id="classHeader">
49
+ <table class="header-table">
50
+ <tr class="top-aligned-row">
51
+ <td><strong>Module</strong></td>
52
+ <td class="class-name-in-header">Inflector</td>
53
+ </tr>
54
+ <tr class="top-aligned-row">
55
+ <td><strong>In:</strong></td>
56
+ <td>
57
+ <a href="../files/lib/rails_pg_procs_rb.html">
58
+ lib/rails_pg_procs.rb
59
+ </a>
60
+ <br />
61
+ </td>
62
+ </tr>
63
+
64
+ </table>
65
+ </div>
66
+ <!-- banner header -->
67
+
68
+ <div id="bodyContent">
69
+
70
+
71
+
72
+ <div id="contextContent">
73
+
74
+
75
+
76
+ </div>
77
+
78
+ <div id="method-list">
79
+ <h3 class="section-bar">Methods</h3>
80
+
81
+ <div class="name-list">
82
+ <a href="#M000035">symbolize</a>&nbsp;&nbsp;
83
+ <a href="#M000034">triggerize</a>&nbsp;&nbsp;
84
+ </div>
85
+ </div>
86
+
87
+ </div>
88
+
89
+
90
+ <!-- if includes -->
91
+
92
+ <div id="section">
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+ <!-- if method_list -->
102
+ <div id="methods">
103
+ <h3 class="section-bar">Public Instance methods</h3>
104
+
105
+ <div id="method-M000035" class="method-detail">
106
+ <a name="M000035"></a>
107
+
108
+ <div class="method-heading">
109
+ <a href="#M000035" class="method-signature">
110
+ <span class="method-name">symbolize</span><span class="method-args">(val)</span>
111
+ </a>
112
+ </div>
113
+
114
+ <div class="method-description">
115
+ <p><a class="source-toggle" href="#"
116
+ onclick="toggleCode('M000035-source');return false;">[Source]</a></p>
117
+ <div class="method-source-code" id="M000035-source">
118
+ <pre>
119
+ <span class="ruby-comment cmt"># File lib/rails_pg_procs.rb, line 13</span>
120
+ 13: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">symbolize</span>(<span class="ruby-identifier">val</span>)
121
+ 14: <span class="ruby-keyword kw">return</span> <span class="ruby-node">&quot;'#{val}'&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">val</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/-/</span>
122
+ 15: <span class="ruby-node">&quot;:#{val}&quot;</span>
123
+ 16: <span class="ruby-keyword kw">end</span>
124
+ </pre>
125
+ </div>
126
+ </div>
127
+ </div>
128
+
129
+ <div id="method-M000034" class="method-detail">
130
+ <a name="M000034"></a>
131
+
132
+ <div class="method-heading">
133
+ <a href="#M000034" class="method-signature">
134
+ <span class="method-name">triggerize</span><span class="method-args">(table_name, events=[], before=false)</span>
135
+ </a>
136
+ </div>
137
+
138
+ <div class="method-description">
139
+ <p><a class="source-toggle" href="#"
140
+ onclick="toggleCode('M000034-source');return false;">[Source]</a></p>
141
+ <div class="method-source-code" id="M000034-source">
142
+ <pre>
143
+ <span class="ruby-comment cmt"># File lib/rails_pg_procs.rb, line 9</span>
144
+ 9: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">triggerize</span>(<span class="ruby-identifier">table_name</span>, <span class="ruby-identifier">events</span>=[], <span class="ruby-identifier">before</span>=<span class="ruby-keyword kw">false</span>)
145
+ 10: <span class="ruby-identifier">events</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot; or &quot;</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-value str">&quot;:&quot;</span>, <span class="ruby-value str">&quot;&quot;</span>).<span class="ruby-identifier">tr</span>(<span class="ruby-value str">&quot; &quot;</span>, <span class="ruby-value str">&quot;_&quot;</span>).<span class="ruby-identifier">downcase</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;_&quot;</span> <span class="ruby-operator">+</span> (<span class="ruby-identifier">before</span> <span class="ruby-value">? </span><span class="ruby-value str">&quot;before_&quot;</span> <span class="ruby-operator">:</span> <span class="ruby-value str">&quot;after_&quot;</span>) <span class="ruby-operator">+</span> <span class="ruby-identifier">table_name</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;_trigger&quot;</span>
146
+ 11: <span class="ruby-keyword kw">end</span>
147
+ </pre>
148
+ </div>
149
+ </div>
150
+ </div>
151
+
152
+
153
+ </div>
154
+
155
+
156
+ </div>
157
+
158
+
159
+ <div id="validator-badges">
160
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
161
+ </div>
162
+
163
+ </body>
164
+ </html>
@@ -0,0 +1,211 @@
1
+ <!DOCTYPE html
2
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4
+
5
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
6
+ <head>
7
+ <title>Module: SchemaProcs</title>
8
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
9
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
10
+ <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
11
+ <script type="text/javascript">
12
+ // <![CDATA[
13
+
14
+ function popupCode( url ) {
15
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
16
+ }
17
+
18
+ function toggleCode( id ) {
19
+ if ( document.getElementById )
20
+ elem = document.getElementById( id );
21
+ else if ( document.all )
22
+ elem = eval( "document.all." + id );
23
+ else
24
+ return false;
25
+
26
+ elemStyle = elem.style;
27
+
28
+ if ( elemStyle.display != "block" ) {
29
+ elemStyle.display = "block"
30
+ } else {
31
+ elemStyle.display = "none"
32
+ }
33
+
34
+ return true;
35
+ }
36
+
37
+ // Make codeblocks hidden by default
38
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
39
+
40
+ // ]]>
41
+ </script>
42
+
43
+ </head>
44
+ <body>
45
+
46
+
47
+
48
+ <div id="classHeader">
49
+ <table class="header-table">
50
+ <tr class="top-aligned-row">
51
+ <td><strong>Module</strong></td>
52
+ <td class="class-name-in-header">SchemaProcs</td>
53
+ </tr>
54
+ <tr class="top-aligned-row">
55
+ <td><strong>In:</strong></td>
56
+ <td>
57
+ <a href="../files/lib/rails_pg_procs_rb.html">
58
+ lib/rails_pg_procs.rb
59
+ </a>
60
+ <br />
61
+ </td>
62
+ </tr>
63
+
64
+ </table>
65
+ </div>
66
+ <!-- banner header -->
67
+
68
+ <div id="bodyContent">
69
+
70
+
71
+
72
+ <div id="contextContent">
73
+
74
+
75
+
76
+ </div>
77
+
78
+ <div id="method-list">
79
+ <h3 class="section-bar">Methods</h3>
80
+
81
+ <div class="name-list">
82
+ <a href="#M000039">behavior</a>&nbsp;&nbsp;
83
+ <a href="#M000036">cascade_or_restrict</a>&nbsp;&nbsp;
84
+ <a href="#M000038">definer_or_invoker</a>&nbsp;&nbsp;
85
+ <a href="#M000037">strict_or_null</a>&nbsp;&nbsp;
86
+ </div>
87
+ </div>
88
+
89
+ </div>
90
+
91
+
92
+ <!-- if includes -->
93
+
94
+ <div id="section">
95
+
96
+
97
+
98
+
99
+
100
+
101
+
102
+
103
+ <!-- if method_list -->
104
+ <div id="methods">
105
+ <h3 class="section-bar">Public Instance methods</h3>
106
+
107
+ <div id="method-M000039" class="method-detail">
108
+ <a name="M000039"></a>
109
+
110
+ <div class="method-heading">
111
+ <a href="#M000039" class="method-signature">
112
+ <span class="method-name">behavior</span><span class="method-args">(volatile='v')</span>
113
+ </a>
114
+ </div>
115
+
116
+ <div class="method-description">
117
+ <p><a class="source-toggle" href="#"
118
+ onclick="toggleCode('M000039-source');return false;">[Source]</a></p>
119
+ <div class="method-source-code" id="M000039-source">
120
+ <pre>
121
+ <span class="ruby-comment cmt"># File lib/rails_pg_procs.rb, line 48</span>
122
+ 48: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">behavior</span>(<span class="ruby-identifier">volatile</span>=<span class="ruby-value str">'v'</span>)
123
+ 49: <span class="ruby-ivar">@@_behavior</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">volatile</span>)
124
+ 50: <span class="ruby-keyword kw">end</span>
125
+ </pre>
126
+ </div>
127
+ </div>
128
+ </div>
129
+
130
+ <div id="method-M000036" class="method-detail">
131
+ <a name="M000036"></a>
132
+
133
+ <div class="method-heading">
134
+ <a href="#M000036" class="method-signature">
135
+ <span class="method-name">cascade_or_restrict</span><span class="method-args">(cascade=false)</span>
136
+ </a>
137
+ </div>
138
+
139
+ <div class="method-description">
140
+ <p><a class="source-toggle" href="#"
141
+ onclick="toggleCode('M000036-source');return false;">[Source]</a></p>
142
+ <div class="method-source-code" id="M000036-source">
143
+ <pre>
144
+ <span class="ruby-comment cmt"># File lib/rails_pg_procs.rb, line 39</span>
145
+ 39: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cascade_or_restrict</span>(<span class="ruby-identifier">cascade</span>=<span class="ruby-keyword kw">false</span>)
146
+ 40: <span class="ruby-ivar">@@_cascade_or_restrict</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">cascade</span>)
147
+ 41: <span class="ruby-keyword kw">end</span>
148
+ </pre>
149
+ </div>
150
+ </div>
151
+ </div>
152
+
153
+ <div id="method-M000038" class="method-detail">
154
+ <a name="M000038"></a>
155
+
156
+ <div class="method-heading">
157
+ <a href="#M000038" class="method-signature">
158
+ <span class="method-name">definer_or_invoker</span><span class="method-args">(definer=false)</span>
159
+ </a>
160
+ </div>
161
+
162
+ <div class="method-description">
163
+ <p><a class="source-toggle" href="#"
164
+ onclick="toggleCode('M000038-source');return false;">[Source]</a></p>
165
+ <div class="method-source-code" id="M000038-source">
166
+ <pre>
167
+ <span class="ruby-comment cmt"># File lib/rails_pg_procs.rb, line 45</span>
168
+ 45: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">definer_or_invoker</span>(<span class="ruby-identifier">definer</span>=<span class="ruby-keyword kw">false</span>)
169
+ 46: <span class="ruby-ivar">@@_definer_or_invoker</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">definer</span>)
170
+ 47: <span class="ruby-keyword kw">end</span>
171
+ </pre>
172
+ </div>
173
+ </div>
174
+ </div>
175
+
176
+ <div id="method-M000037" class="method-detail">
177
+ <a name="M000037"></a>
178
+
179
+ <div class="method-heading">
180
+ <a href="#M000037" class="method-signature">
181
+ <span class="method-name">strict_or_null</span><span class="method-args">(is_strict=false)</span>
182
+ </a>
183
+ </div>
184
+
185
+ <div class="method-description">
186
+ <p><a class="source-toggle" href="#"
187
+ onclick="toggleCode('M000037-source');return false;">[Source]</a></p>
188
+ <div class="method-source-code" id="M000037-source">
189
+ <pre>
190
+ <span class="ruby-comment cmt"># File lib/rails_pg_procs.rb, line 42</span>
191
+ 42: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">strict_or_null</span>(<span class="ruby-identifier">is_strict</span>=<span class="ruby-keyword kw">false</span>)
192
+ 43: <span class="ruby-ivar">@@_strict_or_null</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">is_strict</span>)
193
+ 44: <span class="ruby-keyword kw">end</span>
194
+ </pre>
195
+ </div>
196
+ </div>
197
+ </div>
198
+
199
+
200
+ </div>
201
+
202
+
203
+ </div>
204
+
205
+
206
+ <div id="validator-badges">
207
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
208
+ </div>
209
+
210
+ </body>
211
+ </html>
@@ -0,0 +1,139 @@
1
+ <!DOCTYPE html
2
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4
+
5
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
6
+ <head>
7
+ <title>Module: SqlFormat</title>
8
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
9
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
10
+ <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
11
+ <script type="text/javascript">
12
+ // <![CDATA[
13
+
14
+ function popupCode( url ) {
15
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
16
+ }
17
+
18
+ function toggleCode( id ) {
19
+ if ( document.getElementById )
20
+ elem = document.getElementById( id );
21
+ else if ( document.all )
22
+ elem = eval( "document.all." + id );
23
+ else
24
+ return false;
25
+
26
+ elemStyle = elem.style;
27
+
28
+ if ( elemStyle.display != "block" ) {
29
+ elemStyle.display = "block"
30
+ } else {
31
+ elemStyle.display = "none"
32
+ }
33
+
34
+ return true;
35
+ }
36
+
37
+ // Make codeblocks hidden by default
38
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
39
+
40
+ // ]]>
41
+ </script>
42
+
43
+ </head>
44
+ <body>
45
+
46
+
47
+
48
+ <div id="classHeader">
49
+ <table class="header-table">
50
+ <tr class="top-aligned-row">
51
+ <td><strong>Module</strong></td>
52
+ <td class="class-name-in-header">SqlFormat</td>
53
+ </tr>
54
+ <tr class="top-aligned-row">
55
+ <td><strong>In:</strong></td>
56
+ <td>
57
+ <a href="../files/lib/rails_pg_procs_rb.html">
58
+ lib/rails_pg_procs.rb
59
+ </a>
60
+ <br />
61
+ </td>
62
+ </tr>
63
+
64
+ </table>
65
+ </div>
66
+ <!-- banner header -->
67
+
68
+ <div id="bodyContent">
69
+
70
+
71
+
72
+ <div id="contextContent">
73
+
74
+
75
+
76
+ </div>
77
+
78
+ <div id="method-list">
79
+ <h3 class="section-bar">Methods</h3>
80
+
81
+ <div class="name-list">
82
+ <a href="#M000033">to_sql_name</a>&nbsp;&nbsp;
83
+ </div>
84
+ </div>
85
+
86
+ </div>
87
+
88
+
89
+ <!-- if includes -->
90
+
91
+ <div id="section">
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+ <!-- if method_list -->
101
+ <div id="methods">
102
+ <h3 class="section-bar">Public Instance methods</h3>
103
+
104
+ <div id="method-M000033" class="method-detail">
105
+ <a name="M000033"></a>
106
+
107
+ <div class="method-heading">
108
+ <a href="#M000033" class="method-signature">
109
+ <span class="method-name">to_sql_name</span><span class="method-args">()</span>
110
+ </a>
111
+ </div>
112
+
113
+ <div class="method-description">
114
+ <p><a class="source-toggle" href="#"
115
+ onclick="toggleCode('M000033-source');return false;">[Source]</a></p>
116
+ <div class="method-source-code" id="M000033-source">
117
+ <pre>
118
+ <span class="ruby-comment cmt"># File lib/rails_pg_procs.rb, line 20</span>
119
+ 20: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_sql_name</span>
120
+ 21: <span class="ruby-value str">'&quot;'</span> <span class="ruby-operator">+</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">+</span> <span class="ruby-value str">'&quot;'</span>
121
+ 22: <span class="ruby-keyword kw">end</span>
122
+ </pre>
123
+ </div>
124
+ </div>
125
+ </div>
126
+
127
+
128
+ </div>
129
+
130
+
131
+ </div>
132
+
133
+
134
+ <div id="validator-badges">
135
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
136
+ </div>
137
+
138
+ </body>
139
+ </html>