Skip to content
/ classx Public

ruby's class extention interface like perl's Moose to write more simply and strict

Notifications You must be signed in to change notification settings

walf443/classx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

= classx
Meta Framework extending and flexible attribute like Moose ( perl )

== Synopsis

  require 'classx'
  class Point
    include ClassX

    has :x, :kind_of => Fixnum
    has :y, :kind_of => Fixnum
  end

  class Point3D < Point
    has :z, :kind_of => Fixnum, :optional => true
  end

  Point.new(:x => 30, :y => 40)  #=> <# Point @x=30, @y=40 >
  point3d = Point3D.new(:x => 30, :y => 40, :z => 50)  #=> <# Point3D @x=30, @y=40, @z=50 >
  point3d.z = 60.0 # raise ClassX::InvalidAttrArgument

== Description
perl's Moose like Class interface.

== Installation

=== Archive Installation

	rake install

=== Gem Installation

	gem install classx

== Features/Problems

== SEE ALSO

Moose: http://search.cpan.org/~drolsky/Moose-0.57/lib/Moose.pm

== Copyright

Author::    Keiji, Yoshimi <walf443 at gmail.com>
Copyright:: Copyright (c) 2008 Keiji, Yoshimi
License:: you can redistribute it and/or modify it under the same terms as Ruby itself.

About

ruby's class extention interface like perl's Moose to write more simply and strict

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages