¿Hay alguna manera de comenzar en una línea específica, como una declaración goto?¿Hay una declaración de goto en Ruby?
Respuesta
En primer lugar, sería una declaración, no un comando. Segundo, vea ruby-goto. En tercer lugar, tenga en cuenta
Categoría: Biblioteca/Mal
Yo no lo creo (y, por todo lo sagrado, que no debería ).
Pero hay un módulo goto
si te sientes realmente masoquista.
Existe el interruptor de línea de comando ruby -x
.
-x[directory] Tells Ruby that the script is embedded in a message. Leading garbage will be discarded until the first that starts with “#!” and contains the string, “ruby”. Any meaningful switches on that line will applied. The end of script must be specified with either EOF, ^D (control-D), ^Z (control-Z), or reserved word __END__. If the direc‐ tory name is specified, Ruby will switch to that directory before executing script.
Por cierto, estoy bastante seguro de que ruby-goto era, umm, una broma. No creo que el enlace de descarga haya funcionado alguna vez. ¿O se supone que debo señalarle a la gente y guardar silencio? Nunca sé ...
me gustó siguiente línea de Ryan después de anunciar rubí-goto:
Manténgase en sintonía para el siguiente módulo mal ... rubí malloc! Que tengas un buen día.
Ryan es claramente un genio.
El Goto lib sigue con nosotros: D https://rubygems.org/gems/goto/versions/0
La conservación de toda la gema para la posteridad:
STACK = []
class Label
attr_accessor :name;
attr_accessor :block;
def initialize(name, block);
@name = name
@block = block
end
def ==(sym)
@name == sym
end
end
class Goto < Exception;
attr_accessor :label
def initialize(label); @label = label; end
end
def label(sym, &block)
STACK.last << Label.new(sym, block)
end
def frame_start
STACK << []
end
def frame_end
frame = STACK.pop
idx = 0
begin
for i in (idx...frame.size)
frame[i].block.call if frame[i].block
end
rescue Goto => g
idx = frame.index(g.label)
retry
end
end
def goto(label)
raise Goto.new(label)
end
- 1. Sql - declaración goto
- 2. C++, ¿está justificada esta declaración goto?
- 3. ¿Cómo funciona la declaración goto en este ejemplo?
- 4. Necesito una declaración anticipada en Ruby
- 5. Resharper 5 Beta - Declaración de Goto (CTRL + Click) no funciona
- 6. En C, ¿por qué necesita una declaración después de una etiqueta goto?
- 7. goto-file en Emacs
- 8. ¿Hay alguna forma de acceder a la expresión desde dentro de una declaración de ruby?
- 9. ¿Hay una declaración abreviada si (sin más) en Ruby on Rails?
- 10. Implementando goto en un ast
- 11. ¿Hay una implementación de bolsa en Ruby?
- 12. GOTO comando en PHP?
- 13. Eclipse CDT (CCS) Goto Definición de una función
- 14. ¿Hay una búsqueda binaria incorporada en Ruby?
- 15. ¿Hay una eliminación Regex en Ruby?
- 16. PHP y la declaración goto que se agregará en PHP 5.3
- 17. Hay un if-else, ¿hay una declaración Ni Nor?
- 18. Ejemplo de una declaración INSERT preparada usando ruby pg gem
- 19. ¿Está utilizando goto una forma legítima de romper dos bucles?
- 20. instrucción GOTO en C# .NET
- 21. ¿Utilizará goto para causar pérdidas de memoria?
- 22. while (1) .. romper en lugar de Goto
- 23. ¿Cómo puedo usar goto en una instrucción switch en Objective-C?
- 24. ¿Hay add_days en ruby datetime?
- 25. ¿Hay una forma segura de ejecutar eval en Ruby?
- 26. ¿Hay una guía/clave de respuesta adicional para ruby koans?
- 27. ¿La instrucción goto es lenta en C#?
- 28. Para usar goto o no?
- 29. ¿Hay una declaración TRACE para win32 C++ básico?
- 30. ¿No hay nombres de argumento en la declaración de resumen?
obligatoria xkcd cómica: http://xkcd.com/292/ – LiraNuna
alguna razón en particular que ¿quieren saber? –
Sé que puede en rspec. Podría mirar la fuente. –