Sha256: 288fce75a5c852689849d11ec695fa231385a1ec4f716e0d8ba4c79e47e0cbfb

Contents?: true

Size: 414 Bytes

Versions: 4

Compression:

Stored size: 414 Bytes

Contents

require 'delegate'

module Linodians
  ##
  # Group of employees
  class Group < Delegator
    attr_reader :members
    alias_method :__getobj__, :members

    def initialize(data = nil)
      @members = Linodians.load_data(data)
      @members.freeze
      super(@members)
    end

    def lookup(username)
      find { |x| x.username == username }
    end

    def __setobj__(_)
      @members
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
linodians-1.0.0 lib/linodians/group.rb
linodians-0.1.0 lib/linodians/group.rb
linodians-0.0.6 lib/linodians/group.rb
linodians-0.0.5 lib/linodians/group.rb