Sha256: 71ded94980e7c710e887054bbbd3a59555a53dc957ee61c0e42fea5552d7794b

Contents?: true

Size: 1.25 KB

Versions: 2

Compression:

Stored size: 1.25 KB

Contents

require 'rumx'

class MyBean
  include Rumx::Bean

  bean_attr_reader   :greeting,           :string,  'My greeting'
  bean_reader        :goodbye,            :string,  'My goodbye'
  bean_attr_accessor :my_accessor,        :integer, 'My integer accessor'
  bean_attr_writer   :my_writer,          :float,   'My float writer'
  bean_reader        :readable_my_writer, :float,   'My secret access to the write-only attribute my_writer'
  bean_attr_accessor :my_boolean,         :boolean, 'My boolean accessor'

  bean_operation     :my_operation,       :string,  'My operation', [
      [ :arg_int,    :integer, 'An int argument',   42                 ],
      [ :arg_float,  :float,   'A float argument'                      ],    # No default value
      [ :arg_string, :string,  'A string argument', 'My default value' ]
  ]

  def initialize
    @greeting    = 'Hello, Rumx'
    @my_accessor = 4
    @my_writer   = 10.78
    @my_boolean  = true
  end

  def goodbye
    'Goodbye, Rumx (hic)'
  end

  def readable_my_writer
    @my_writer
  end

  def my_operation(arg_int, arg_float, arg_string)
    "arg_int class=#{arg_int.class} value=#{arg_int} arg_float class=#{arg_float.class} value=#{arg_float} arg_string class=#{arg_string.class} value=#{arg_string}"
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rumx-0.2.3 examples/simple/my_bean.rb
rumx-0.2.2 examples/simple/my_bean.rb