Alterator/ruby: различия между версиями

Материал из ALT Linux Wiki
(Created)
 
м (Categories << Ruby)
Строка 1: Строка 1:
[[Category:Sisyphus]]
=== ruby-alterator ===
=== ruby-alterator ===


Строка 60: Строка 58:


В данный момент ruby-alterator нигде не используется.
В данный момент ruby-alterator нигде не используется.
[[Категория:Alterator]]
[[Категория:Sisyphus]]
[[Категория:Ruby]]

Версия от 01:51, 1 декабря 2009

ruby-alterator

Простейший бэкенд выглядит следующим образом:

#!/usr/bin/ruby -w

require 'alterator'

back = Alterator::Backend3.new

back.message_loop do |msg|
  case msg[:action]
  when "read"
    back.write :name, "value"
  end
end


Поддержка переводов

TBD

Вывод

Внутри message_loop сделано перенаправление STDOUT->STDERR. Все ответы должны выполняться только специальными командами.

Таблица соответствия alterator-sh-functions и ruby-alterator (back - экземпляр класса Alterator::Backend3):

alterator-sh-functions Alterator::Backend3#write
write_string_param name "value" back.write :name, "value"
write_bool_param name true back.write :name, true
write_enum_item name "value" back.write :name => "value"
write_table_item name1 "value1" name2 "value2" back.write nil, :name1 => "value1", :name2 => "value2"
write_type_item name "value" back.write :name, "value"
write_error "message" raise "message" (выполнение блока прерывается)
write_nop write

Использование

В данный момент ruby-alterator нигде не используется.