Menu_dietetico 0.1.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.
- checksums.yaml +7 -0
- data/.gitignore +9 -0
- data/.rspec +2 -0
- data/.travis.yml +5 -0
- data/CODE_OF_CONDUCT.md +74 -0
- data/Gemfile +4 -0
- data/Guardfile +82 -0
- data/LICENSE.txt +21 -0
- data/README.md +41 -0
- data/Rakefile +6 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/doc/CODE_OF_CONDUCT_md.html +196 -0
- data/doc/Dieta.html +417 -0
- data/doc/Dieta_edades.html +234 -0
- data/doc/Dieta_grupos.html +233 -0
- data/doc/Gemfile.html +101 -0
- data/doc/Gemfile_lock.html +183 -0
- data/doc/Guardfile.html +181 -0
- data/doc/LICENSE_txt.html +118 -0
- data/doc/ListaEnlazada.html +396 -0
- data/doc/Object.html +117 -0
- data/doc/Prct06.html +110 -0
- data/doc/README_md.html +165 -0
- data/doc/Rakefile.html +102 -0
- data/doc/bin/setup.html +102 -0
- data/doc/created.rid +18 -0
- data/doc/css/fonts.css +167 -0
- data/doc/css/rdoc.css +590 -0
- data/doc/fonts/Lato-Light.ttf +0 -0
- data/doc/fonts/Lato-LightItalic.ttf +0 -0
- data/doc/fonts/Lato-Regular.ttf +0 -0
- data/doc/fonts/Lato-RegularItalic.ttf +0 -0
- data/doc/fonts/SourceCodePro-Bold.ttf +0 -0
- data/doc/fonts/SourceCodePro-Regular.ttf +0 -0
- data/doc/images/add.png +0 -0
- data/doc/images/arrow_up.png +0 -0
- data/doc/images/brick.png +0 -0
- data/doc/images/brick_link.png +0 -0
- data/doc/images/bug.png +0 -0
- data/doc/images/bullet_black.png +0 -0
- data/doc/images/bullet_toggle_minus.png +0 -0
- data/doc/images/bullet_toggle_plus.png +0 -0
- data/doc/images/date.png +0 -0
- data/doc/images/delete.png +0 -0
- data/doc/images/find.png +0 -0
- data/doc/images/loadingAnimation.gif +0 -0
- data/doc/images/macFFBgHack.png +0 -0
- data/doc/images/package.png +0 -0
- data/doc/images/page_green.png +0 -0
- data/doc/images/page_white_text.png +0 -0
- data/doc/images/page_white_width.png +0 -0
- data/doc/images/plugin.png +0 -0
- data/doc/images/ruby.png +0 -0
- data/doc/images/tag_blue.png +0 -0
- data/doc/images/tag_green.png +0 -0
- data/doc/images/transparent.png +0 -0
- data/doc/images/wrench.png +0 -0
- data/doc/images/wrench_orange.png +0 -0
- data/doc/images/zoom.png +0 -0
- data/doc/index.html +116 -0
- data/doc/js/darkfish.js +161 -0
- data/doc/js/jquery.js +4 -0
- data/doc/js/navigation.js +142 -0
- data/doc/js/navigation.js.gz +0 -0
- data/doc/js/search.js +109 -0
- data/doc/js/search_index.js +1 -0
- data/doc/js/search_index.js.gz +0 -0
- data/doc/js/searcher.js +229 -0
- data/doc/js/searcher.js.gz +0 -0
- data/doc/prct06_gemspec.html +136 -0
- data/doc/table_of_contents.html +175 -0
- data/lib/prct06.rb +5 -0
- data/lib/prct06/Dieta.rb +137 -0
- data/lib/prct06/ListaEnlazada.rb +67 -0
- data/lib/prct06/version.rb +3 -0
- data/prct06.gemspec +39 -0
- metadata +207 -0
Binary file
|
data/doc/js/search.js
ADDED
@@ -0,0 +1,109 @@
|
|
1
|
+
Search = function(data, input, result) {
|
2
|
+
this.data = data;
|
3
|
+
this.$input = $(input);
|
4
|
+
this.$result = $(result);
|
5
|
+
|
6
|
+
this.$current = null;
|
7
|
+
this.$view = this.$result.parent();
|
8
|
+
this.searcher = new Searcher(data.index);
|
9
|
+
this.init();
|
10
|
+
}
|
11
|
+
|
12
|
+
Search.prototype = $.extend({}, Navigation, new function() {
|
13
|
+
var suid = 1;
|
14
|
+
|
15
|
+
this.init = function() {
|
16
|
+
var _this = this;
|
17
|
+
var observer = function(e) {
|
18
|
+
switch(e.originalEvent.keyCode) {
|
19
|
+
case 38: // Event.KEY_UP
|
20
|
+
case 40: // Event.KEY_DOWN
|
21
|
+
return;
|
22
|
+
}
|
23
|
+
_this.search(_this.$input[0].value);
|
24
|
+
};
|
25
|
+
this.$input.keyup(observer);
|
26
|
+
this.$input.click(observer); // mac's clear field
|
27
|
+
|
28
|
+
this.searcher.ready(function(results, isLast) {
|
29
|
+
_this.addResults(results, isLast);
|
30
|
+
})
|
31
|
+
|
32
|
+
this.initNavigation();
|
33
|
+
this.setNavigationActive(false);
|
34
|
+
}
|
35
|
+
|
36
|
+
this.search = function(value, selectFirstMatch) {
|
37
|
+
value = jQuery.trim(value).toLowerCase();
|
38
|
+
if (value) {
|
39
|
+
this.setNavigationActive(true);
|
40
|
+
} else {
|
41
|
+
this.setNavigationActive(false);
|
42
|
+
}
|
43
|
+
|
44
|
+
if (value == '') {
|
45
|
+
this.lastQuery = value;
|
46
|
+
this.$result.empty();
|
47
|
+
this.$result.attr('aria-expanded', 'false');
|
48
|
+
this.setNavigationActive(false);
|
49
|
+
} else if (value != this.lastQuery) {
|
50
|
+
this.lastQuery = value;
|
51
|
+
this.$result.attr('aria-busy', 'true');
|
52
|
+
this.$result.attr('aria-expanded', 'true');
|
53
|
+
this.firstRun = true;
|
54
|
+
this.searcher.find(value);
|
55
|
+
}
|
56
|
+
}
|
57
|
+
|
58
|
+
this.addResults = function(results, isLast) {
|
59
|
+
var target = this.$result.get(0);
|
60
|
+
if (this.firstRun && (results.length > 0 || isLast)) {
|
61
|
+
this.$current = null;
|
62
|
+
this.$result.empty();
|
63
|
+
}
|
64
|
+
|
65
|
+
for (var i=0, l = results.length; i < l; i++) {
|
66
|
+
var item = this.renderItem.call(this, results[i]);
|
67
|
+
item.setAttribute('id', 'search-result-' + target.childElementCount);
|
68
|
+
target.appendChild(item);
|
69
|
+
};
|
70
|
+
|
71
|
+
if (this.firstRun && results.length > 0) {
|
72
|
+
this.firstRun = false;
|
73
|
+
this.$current = $(target.firstChild);
|
74
|
+
this.$current.addClass('search-selected');
|
75
|
+
}
|
76
|
+
if (jQuery.browser.msie) this.$element[0].className += '';
|
77
|
+
|
78
|
+
if (isLast) this.$result.attr('aria-busy', 'false');
|
79
|
+
}
|
80
|
+
|
81
|
+
this.move = function(isDown) {
|
82
|
+
if (!this.$current) return;
|
83
|
+
var $next = this.$current[isDown ? 'next' : 'prev']();
|
84
|
+
if ($next.length) {
|
85
|
+
this.$current.removeClass('search-selected');
|
86
|
+
$next.addClass('search-selected');
|
87
|
+
this.$input.attr('aria-activedescendant', $next.attr('id'));
|
88
|
+
this.scrollIntoView($next[0], this.$view[0]);
|
89
|
+
this.$current = $next;
|
90
|
+
this.$input.val($next[0].firstChild.firstChild.text);
|
91
|
+
this.$input.select();
|
92
|
+
}
|
93
|
+
return true;
|
94
|
+
}
|
95
|
+
|
96
|
+
this.hlt = function(html) {
|
97
|
+
return this.escapeHTML(html).
|
98
|
+
replace(/\u0001/g, '<em>').
|
99
|
+
replace(/\u0002/g, '</em>');
|
100
|
+
}
|
101
|
+
|
102
|
+
this.escapeHTML = function(html) {
|
103
|
+
return html.replace(/[&<>]/g, function(c) {
|
104
|
+
return '&#' + c.charCodeAt(0) + ';';
|
105
|
+
});
|
106
|
+
}
|
107
|
+
|
108
|
+
});
|
109
|
+
|
@@ -0,0 +1 @@
|
|
1
|
+
var search_data = {"index":{"searchIndex":["dieta","dieta_edades","dieta_grupos","listaenlazada","object","prct06","<=>()","each()","new()","new()","new()","new()","plato()","pop()","push()","to_s()","to_s()","to_s()","to_s()","code_of_conduct","gemfile","gemfile.lock","guardfile","license","readme","rakefile","setup","prct06.gemspec"],"longSearchIndex":["dieta","dieta_edades","dieta_grupos","listaenlazada","object","prct06","dieta#<=>()","listaenlazada#each()","dieta::new()","dieta_edades::new()","dieta_grupos::new()","listaenlazada::new()","dieta#plato()","listaenlazada#pop()","listaenlazada#push()","dieta#to_s()","dieta_edades#to_s()","dieta_grupos#to_s()","listaenlazada#to_s()","","","","","","","","",""],"info":[["Dieta","","Dieta.html","","<p>Clase dieta base. Almacena un menú, indicando aspectos, tales como,\nporcentaje de ingesta, VCT, proteínas, …\n"],["Dieta_edades","","Dieta_edades.html","","<p>Clase hija que hereda de Dieta y añade al menú un campo en el que se indica\nel grupo de edad para el …\n"],["Dieta_grupos","","Dieta_grupos.html","","<p>Clase hija de Dieta que añade al menú el campo de grupo de alimentos.\n"],["ListaEnlazada","","ListaEnlazada.html","","<p>Clase que implementa una lista enlazada\n"],["Object","","Object.html","",""],["Prct06","","Prct06.html","",""],["<=>","Dieta","Dieta.html#method-i-3C-3D-3E","(other)",""],["each","ListaEnlazada","ListaEnlazada.html#method-i-each","()",""],["new","Dieta","Dieta.html#method-c-new","(titulo, porcentaje_ingesta, nplatos, vct, proteinas, grasas, hidratos, *des_platos)","<p>constructor\n"],["new","Dieta_edades","Dieta_edades.html#method-c-new","(titulo, porcentaje_ingesta, nplatos, vct, proteinas, grasas, hidratos, *des_platos, grupo_edades)",""],["new","Dieta_grupos","Dieta_grupos.html#method-c-new","(titulo, porcentaje_ingesta, nplatos, vct, proteinas, grasas, hidratos, *des_platos, grupo)",""],["new","ListaEnlazada","ListaEnlazada.html#method-c-new","()","<p>Al inicializarse el objeto. El tamaño de la lista es cero y tanto @bottom\ncomo @top son nil.\n"],["plato","Dieta","Dieta.html#method-i-plato","(n)",""],["pop","ListaEnlazada","ListaEnlazada.html#method-i-pop","()","<p>Elimina el último elemento añadido a la lista. En este caso, @top apuntará\nal elemento anterior.\n"],["push","ListaEnlazada","ListaEnlazada.html#method-i-push","(element)","<p>Añade un elemento al final de la lista. @top apuntará al último elemento\nañadido\n"],["to_s","Dieta","Dieta.html#method-i-to_s","()","<p>Muestra el menú correctamente formateado\n"],["to_s","Dieta_edades","Dieta_edades.html#method-i-to_s","()",""],["to_s","Dieta_grupos","Dieta_grupos.html#method-i-to_s","()",""],["to_s","ListaEnlazada","ListaEnlazada.html#method-i-to_s","()","<p>Método que permite mostrar el último elemento añadido en la lista. En caso\nde que la lista esté vacía, …\n"],["CODE_OF_CONDUCT","","CODE_OF_CONDUCT_md.html","","<p>Contributor Covenant Code of Conduct\n<p>Our Pledge\n<p>In the interest of fostering an open and welcoming environment, …\n"],["Gemfile","","Gemfile.html","","<p>source 'rubygems.org'\n<p># Specify your gem's dependencies in prct06.gemspec gemspec\n"],["Gemfile.lock","","Gemfile_lock.html","","<p>PATH\n\n<pre>remote: .\nspecs:\n Practica8 (0.1.0)</pre>\n<p>GEM\n"],["Guardfile","","Guardfile.html","","<p># A sample Guardfile # More info at github.com/guard/guard#readme\n<p>## Uncomment and set this to only include …\n"],["LICENSE","","LICENSE_txt.html","","<p>The MIT License (MIT)\n<p>Copyright © 2016 TODO: Write your name\n<p>Permission is hereby granted, free of charge, …\n"],["README","","README_md.html","","<p>Práctica 8\n<p>Welcome to your new gem! In this directory, you'll find the files you\nneed to be able to …\n"],["Rakefile","","Rakefile.html","","<p>require “bundler/gem_tasks” require “rspec/core/rake_task”\n<p>RSpec::Core::RakeTask.new …\n"],["setup","","bin/setup.html","","<p>#!/usr/bin/env bash set -euo pipefail IFS=$'nt' set -vx\n<p>bundle install\n<p># Do any other automated …\n"],["prct06.gemspec","","prct06_gemspec.html","","<p>lib = File.expand_path('../lib', __FILE__) $LOAD_PATH.unshift(lib)\nunless $LOAD_PATH.include?(lib) …\n"]]}}
|
Binary file
|
data/doc/js/searcher.js
ADDED
@@ -0,0 +1,229 @@
|
|
1
|
+
Searcher = function(data) {
|
2
|
+
this.data = data;
|
3
|
+
this.handlers = [];
|
4
|
+
}
|
5
|
+
|
6
|
+
Searcher.prototype = new function() {
|
7
|
+
// search is performed in chunks of 1000 for non-blocking user input
|
8
|
+
var CHUNK_SIZE = 1000;
|
9
|
+
// do not try to find more than 100 results
|
10
|
+
var MAX_RESULTS = 100;
|
11
|
+
var huid = 1;
|
12
|
+
var suid = 1;
|
13
|
+
var runs = 0;
|
14
|
+
|
15
|
+
this.find = function(query) {
|
16
|
+
var queries = splitQuery(query);
|
17
|
+
var regexps = buildRegexps(queries);
|
18
|
+
var highlighters = buildHilighters(queries);
|
19
|
+
var state = { from: 0, pass: 0, limit: MAX_RESULTS, n: suid++};
|
20
|
+
var _this = this;
|
21
|
+
|
22
|
+
this.currentSuid = state.n;
|
23
|
+
|
24
|
+
if (!query) return;
|
25
|
+
|
26
|
+
var run = function() {
|
27
|
+
// stop current search thread if new search started
|
28
|
+
if (state.n != _this.currentSuid) return;
|
29
|
+
|
30
|
+
var results =
|
31
|
+
performSearch(_this.data, regexps, queries, highlighters, state);
|
32
|
+
var hasMore = (state.limit > 0 && state.pass < 4);
|
33
|
+
|
34
|
+
triggerResults.call(_this, results, !hasMore);
|
35
|
+
if (hasMore) {
|
36
|
+
setTimeout(run, 2);
|
37
|
+
}
|
38
|
+
runs++;
|
39
|
+
};
|
40
|
+
runs = 0;
|
41
|
+
|
42
|
+
// start search thread
|
43
|
+
run();
|
44
|
+
}
|
45
|
+
|
46
|
+
/* ----- Events ------ */
|
47
|
+
this.ready = function(fn) {
|
48
|
+
fn.huid = huid;
|
49
|
+
this.handlers.push(fn);
|
50
|
+
}
|
51
|
+
|
52
|
+
/* ----- Utilities ------ */
|
53
|
+
function splitQuery(query) {
|
54
|
+
return jQuery.grep(query.split(/(\s+|::?|\(\)?)/), function(string) {
|
55
|
+
return string.match(/\S/);
|
56
|
+
});
|
57
|
+
}
|
58
|
+
|
59
|
+
function buildRegexps(queries) {
|
60
|
+
return jQuery.map(queries, function(query) {
|
61
|
+
return new RegExp(query.replace(/(.)/g, '([$1])([^$1]*?)'), 'i');
|
62
|
+
});
|
63
|
+
}
|
64
|
+
|
65
|
+
function buildHilighters(queries) {
|
66
|
+
return jQuery.map(queries, function(query) {
|
67
|
+
return jQuery.map(query.split(''), function(l, i) {
|
68
|
+
return '\u0001$' + (i*2+1) + '\u0002$' + (i*2+2);
|
69
|
+
}).join('');
|
70
|
+
});
|
71
|
+
}
|
72
|
+
|
73
|
+
// function longMatchRegexp(index, longIndex, regexps) {
|
74
|
+
// for (var i = regexps.length - 1; i >= 0; i--){
|
75
|
+
// if (!index.match(regexps[i]) && !longIndex.match(regexps[i])) return false;
|
76
|
+
// };
|
77
|
+
// return true;
|
78
|
+
// }
|
79
|
+
|
80
|
+
|
81
|
+
/* ----- Mathchers ------ */
|
82
|
+
|
83
|
+
/*
|
84
|
+
* This record matches if the index starts with queries[0] and the record
|
85
|
+
* matches all of the regexps
|
86
|
+
*/
|
87
|
+
function matchPassBeginning(index, longIndex, queries, regexps) {
|
88
|
+
if (index.indexOf(queries[0]) != 0) return false;
|
89
|
+
for (var i=1, l = regexps.length; i < l; i++) {
|
90
|
+
if (!index.match(regexps[i]) && !longIndex.match(regexps[i]))
|
91
|
+
return false;
|
92
|
+
};
|
93
|
+
return true;
|
94
|
+
}
|
95
|
+
|
96
|
+
/*
|
97
|
+
* This record matches if the longIndex starts with queries[0] and the
|
98
|
+
* longIndex matches all of the regexps
|
99
|
+
*/
|
100
|
+
function matchPassLongIndex(index, longIndex, queries, regexps) {
|
101
|
+
if (longIndex.indexOf(queries[0]) != 0) return false;
|
102
|
+
for (var i=1, l = regexps.length; i < l; i++) {
|
103
|
+
if (!longIndex.match(regexps[i]))
|
104
|
+
return false;
|
105
|
+
};
|
106
|
+
return true;
|
107
|
+
}
|
108
|
+
|
109
|
+
/*
|
110
|
+
* This record matches if the index contains queries[0] and the record
|
111
|
+
* matches all of the regexps
|
112
|
+
*/
|
113
|
+
function matchPassContains(index, longIndex, queries, regexps) {
|
114
|
+
if (index.indexOf(queries[0]) == -1) return false;
|
115
|
+
for (var i=1, l = regexps.length; i < l; i++) {
|
116
|
+
if (!index.match(regexps[i]) && !longIndex.match(regexps[i]))
|
117
|
+
return false;
|
118
|
+
};
|
119
|
+
return true;
|
120
|
+
}
|
121
|
+
|
122
|
+
/*
|
123
|
+
* This record matches if regexps[0] matches the index and the record
|
124
|
+
* matches all of the regexps
|
125
|
+
*/
|
126
|
+
function matchPassRegexp(index, longIndex, queries, regexps) {
|
127
|
+
if (!index.match(regexps[0])) return false;
|
128
|
+
for (var i=1, l = regexps.length; i < l; i++) {
|
129
|
+
if (!index.match(regexps[i]) && !longIndex.match(regexps[i]))
|
130
|
+
return false;
|
131
|
+
};
|
132
|
+
return true;
|
133
|
+
}
|
134
|
+
|
135
|
+
|
136
|
+
/* ----- Highlighters ------ */
|
137
|
+
function highlightRegexp(info, queries, regexps, highlighters) {
|
138
|
+
var result = createResult(info);
|
139
|
+
for (var i=0, l = regexps.length; i < l; i++) {
|
140
|
+
result.title = result.title.replace(regexps[i], highlighters[i]);
|
141
|
+
result.namespace = result.namespace.replace(regexps[i], highlighters[i]);
|
142
|
+
};
|
143
|
+
return result;
|
144
|
+
}
|
145
|
+
|
146
|
+
function hltSubstring(string, pos, length) {
|
147
|
+
return string.substring(0, pos) + '\u0001' + string.substring(pos, pos + length) + '\u0002' + string.substring(pos + length);
|
148
|
+
}
|
149
|
+
|
150
|
+
function highlightQuery(info, queries, regexps, highlighters) {
|
151
|
+
var result = createResult(info);
|
152
|
+
var pos = 0;
|
153
|
+
var lcTitle = result.title.toLowerCase();
|
154
|
+
|
155
|
+
pos = lcTitle.indexOf(queries[0]);
|
156
|
+
if (pos != -1) {
|
157
|
+
result.title = hltSubstring(result.title, pos, queries[0].length);
|
158
|
+
}
|
159
|
+
|
160
|
+
result.namespace = result.namespace.replace(regexps[0], highlighters[0]);
|
161
|
+
for (var i=1, l = regexps.length; i < l; i++) {
|
162
|
+
result.title = result.title.replace(regexps[i], highlighters[i]);
|
163
|
+
result.namespace = result.namespace.replace(regexps[i], highlighters[i]);
|
164
|
+
};
|
165
|
+
return result;
|
166
|
+
}
|
167
|
+
|
168
|
+
function createResult(info) {
|
169
|
+
var result = {};
|
170
|
+
result.title = info[0];
|
171
|
+
result.namespace = info[1];
|
172
|
+
result.path = info[2];
|
173
|
+
result.params = info[3];
|
174
|
+
result.snippet = info[4];
|
175
|
+
result.badge = info[6];
|
176
|
+
return result;
|
177
|
+
}
|
178
|
+
|
179
|
+
/* ----- Searching ------ */
|
180
|
+
function performSearch(data, regexps, queries, highlighters, state) {
|
181
|
+
var searchIndex = data.searchIndex;
|
182
|
+
var longSearchIndex = data.longSearchIndex;
|
183
|
+
var info = data.info;
|
184
|
+
var result = [];
|
185
|
+
var i = state.from;
|
186
|
+
var l = searchIndex.length;
|
187
|
+
var togo = CHUNK_SIZE;
|
188
|
+
var matchFunc, hltFunc;
|
189
|
+
|
190
|
+
while (state.pass < 4 && state.limit > 0 && togo > 0) {
|
191
|
+
if (state.pass == 0) {
|
192
|
+
matchFunc = matchPassBeginning;
|
193
|
+
hltFunc = highlightQuery;
|
194
|
+
} else if (state.pass == 1) {
|
195
|
+
matchFunc = matchPassLongIndex;
|
196
|
+
hltFunc = highlightQuery;
|
197
|
+
} else if (state.pass == 2) {
|
198
|
+
matchFunc = matchPassContains;
|
199
|
+
hltFunc = highlightQuery;
|
200
|
+
} else if (state.pass == 3) {
|
201
|
+
matchFunc = matchPassRegexp;
|
202
|
+
hltFunc = highlightRegexp;
|
203
|
+
}
|
204
|
+
|
205
|
+
for (; togo > 0 && i < l && state.limit > 0; i++, togo--) {
|
206
|
+
if (info[i].n == state.n) continue;
|
207
|
+
if (matchFunc(searchIndex[i], longSearchIndex[i], queries, regexps)) {
|
208
|
+
info[i].n = state.n;
|
209
|
+
result.push(hltFunc(info[i], queries, regexps, highlighters));
|
210
|
+
state.limit--;
|
211
|
+
}
|
212
|
+
};
|
213
|
+
if (searchIndex.length <= i) {
|
214
|
+
state.pass++;
|
215
|
+
i = state.from = 0;
|
216
|
+
} else {
|
217
|
+
state.from = i;
|
218
|
+
}
|
219
|
+
}
|
220
|
+
return result;
|
221
|
+
}
|
222
|
+
|
223
|
+
function triggerResults(results, isLast) {
|
224
|
+
jQuery.each(this.handlers, function(i, fn) {
|
225
|
+
fn.call(this, results, isLast)
|
226
|
+
})
|
227
|
+
}
|
228
|
+
}
|
229
|
+
|
Binary file
|
@@ -0,0 +1,136 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<meta charset="UTF-8">
|
6
|
+
|
7
|
+
<title>prct06.gemspec - RDoc Documentation</title>
|
8
|
+
|
9
|
+
<script type="text/javascript">
|
10
|
+
var rdoc_rel_prefix = "./";
|
11
|
+
var index_rel_prefix = "./";
|
12
|
+
</script>
|
13
|
+
|
14
|
+
<script src="./js/jquery.js"></script>
|
15
|
+
<script src="./js/darkfish.js"></script>
|
16
|
+
|
17
|
+
<link href="./css/fonts.css" rel="stylesheet">
|
18
|
+
<link href="./css/rdoc.css" rel="stylesheet">
|
19
|
+
|
20
|
+
|
21
|
+
|
22
|
+
<body id="top" role="document" class="file">
|
23
|
+
<nav role="navigation">
|
24
|
+
<div id="project-navigation">
|
25
|
+
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
26
|
+
<h2>
|
27
|
+
<a href="./index.html" rel="home">Home</a>
|
28
|
+
</h2>
|
29
|
+
|
30
|
+
<div id="table-of-contents-navigation">
|
31
|
+
<a href="./table_of_contents.html#pages">Pages</a>
|
32
|
+
<a href="./table_of_contents.html#classes">Classes</a>
|
33
|
+
<a href="./table_of_contents.html#methods">Methods</a>
|
34
|
+
</div>
|
35
|
+
</div>
|
36
|
+
|
37
|
+
<div id="search-section" role="search" class="project-section initially-hidden">
|
38
|
+
<form action="#" method="get" accept-charset="utf-8">
|
39
|
+
<div id="search-field-wrapper">
|
40
|
+
<input id="search-field" role="combobox" aria-label="Search"
|
41
|
+
aria-autocomplete="list" aria-controls="search-results"
|
42
|
+
type="text" name="search" placeholder="Search" spellcheck="false"
|
43
|
+
title="Type to search, Up and Down to navigate, Enter to load">
|
44
|
+
</div>
|
45
|
+
|
46
|
+
<ul id="search-results" aria-label="Search Results"
|
47
|
+
aria-busy="false" aria-expanded="false"
|
48
|
+
aria-atomic="false" class="initially-hidden"></ul>
|
49
|
+
</form>
|
50
|
+
</div>
|
51
|
+
|
52
|
+
</div>
|
53
|
+
|
54
|
+
|
55
|
+
|
56
|
+
<div id="project-metadata">
|
57
|
+
<div id="fileindex-section" class="nav-section">
|
58
|
+
<h3>Pages</h3>
|
59
|
+
|
60
|
+
<ul class="link-list">
|
61
|
+
|
62
|
+
<li><a href="./CODE_OF_CONDUCT_md.html">CODE_OF_CONDUCT</a>
|
63
|
+
|
64
|
+
<li><a href="./Gemfile.html">Gemfile</a>
|
65
|
+
|
66
|
+
<li><a href="./Gemfile_lock.html">Gemfile.lock</a>
|
67
|
+
|
68
|
+
<li><a href="./Guardfile.html">Guardfile</a>
|
69
|
+
|
70
|
+
<li><a href="./LICENSE_txt.html">LICENSE</a>
|
71
|
+
|
72
|
+
<li><a href="./README_md.html">README</a>
|
73
|
+
|
74
|
+
<li><a href="./Rakefile.html">Rakefile</a>
|
75
|
+
|
76
|
+
<li><a href="./bin/setup.html">setup</a>
|
77
|
+
|
78
|
+
<li><a href="./prct06_gemspec.html">prct06.gemspec</a>
|
79
|
+
|
80
|
+
</ul>
|
81
|
+
</div>
|
82
|
+
|
83
|
+
</div>
|
84
|
+
</nav>
|
85
|
+
|
86
|
+
<main role="main" aria-label="Page prct06.gemspec">
|
87
|
+
|
88
|
+
<p>lib = File.expand_path('../lib', __FILE__) $LOAD_PATH.unshift(lib)
|
89
|
+
unless $LOAD_PATH.include?(lib) require 'prct06/version'</p>
|
90
|
+
|
91
|
+
<p>Gem::Specification.new do |spec|</p>
|
92
|
+
|
93
|
+
<pre class="ruby"><span class="ruby-identifier">spec</span>.<span class="ruby-identifier">name</span> = <span class="ruby-string">"Practica8"</span>
|
94
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">version</span> = <span class="ruby-constant">Prct06</span><span class="ruby-operator">::</span><span class="ruby-constant">VERSION</span>
|
95
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">authors</span> = [<span class="ruby-string">"Isaac Aimán"</span>]
|
96
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">email</span> = [<span class="ruby-string">"alu0100841565@ull.edu.es"</span>]
|
97
|
+
|
98
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">summary</span> = <span class="ruby-string">%q{Práctica de laboratorio #8. Desarrollo de una lista doblemente enlazada mediante un desarrollo dirigido por pruebas y creación de una jerarquía de clases}</span>
|
99
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">description</span> = <span class="ruby-string">%q{Siguiendo el modelo de desarrollo dirigido por pruebas o TDD, se busca implementar una lista soblemente enlazada en Ruby, partiendo de la estructura de geme de la práctica 7 e implementar dos clases hijas de la clase Menu.}</span>
|
100
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">homepage</span> = <span class="ruby-string">"https://github.com/ULL-ESIT-LPP-1617/menu-dietetico-alu0100841565"</span>
|
101
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">license</span> = <span class="ruby-string">"MIT"</span>
|
102
|
+
|
103
|
+
<span class="ruby-comment"># Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'</span>
|
104
|
+
<span class="ruby-comment"># to allow pushing to a single host or delete this section to allow pushing to any host.</span>
|
105
|
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">spec</span>.<span class="ruby-identifier">respond_to?</span>(:<span class="ruby-identifier">metadata</span>)
|
106
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">metadata</span>[<span class="ruby-string">'allowed_push_host'</span>] = <span class="ruby-string">"TODO: Set to 'http://mygemserver.com'"</span>
|
107
|
+
<span class="ruby-keyword">else</span>
|
108
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-string">"RubyGems 2.0 or newer is required to protect against "</span> <span class="ruby-string">"public gem pushes."</span>
|
109
|
+
<span class="ruby-keyword">end</span>
|
110
|
+
|
111
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">files</span> = <span class="ruby-value">%x`git ls-files -z`</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">"\x0"</span>).<span class="ruby-identifier">reject</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
|
112
|
+
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">match</span>(<span class="ruby-regexp">%r{^(test|spec|features)/}</span>)
|
113
|
+
<span class="ruby-keyword">end</span>
|
114
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">bindir</span> = <span class="ruby-string">"exe"</span>
|
115
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">executables</span> = <span class="ruby-identifier">spec</span>.<span class="ruby-identifier">files</span>.<span class="ruby-identifier">grep</span>(<span class="ruby-regexp">%r{^exe/}</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">basename</span>(<span class="ruby-identifier">f</span>) }
|
116
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">require_paths</span> = [<span class="ruby-string">"lib"</span>]
|
117
|
+
|
118
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">add_development_dependency</span> <span class="ruby-string">"bundler"</span>, <span class="ruby-string">"~> 1.13"</span>
|
119
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">add_development_dependency</span> <span class="ruby-string">"rake"</span>, <span class="ruby-string">"~> 10.0"</span>
|
120
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">add_development_dependency</span> <span class="ruby-string">"rspec"</span>, <span class="ruby-string">"~> 3.0"</span>
|
121
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">add_development_dependency</span> <span class="ruby-string">"guard"</span>
|
122
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">add_development_dependency</span> <span class="ruby-string">"guard-rspec"</span>
|
123
|
+
<span class="ruby-identifier">spec</span>.<span class="ruby-identifier">add_development_dependency</span> <span class="ruby-string">"guard-bundler"</span>
|
124
|
+
</pre>
|
125
|
+
|
126
|
+
<p>end</p>
|
127
|
+
</main>
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
<footer id="validator-badges" role="contentinfo">
|
132
|
+
<p><a href="http://validator.w3.org/check/referer">Validate</a>
|
133
|
+
<p>Generated by <a href="https://rdoc.github.io/rdoc">RDoc</a> 5.0.0.
|
134
|
+
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
135
|
+
</footer>
|
136
|
+
|