diff options
author | ttate <ttate@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-04-11 03:06:33 +0000 |
---|---|---|
committer | ttate <ttate@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-04-11 03:06:33 +0000 |
commit | 1ee89595bc28f8bcfcaa34b817d6c4fe31b6a019 (patch) | |
tree | b38da9ce8144fefe82cd6b932ae2822751280a40 /ext | |
parent | bd074c1f0355ff8ddca2a8fd5f5abc4c816769d5 (diff) |
define alias "struct" and "union" in the module Importable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2355 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext')
-rw-r--r-- | ext/dl/lib/dl/struct.rb | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/ext/dl/lib/dl/struct.rb b/ext/dl/lib/dl/struct.rb index 6c21af71ac..eb727762ae 100644 --- a/ext/dl/lib/dl/struct.rb +++ b/ext/dl/lib/dl/struct.rb @@ -10,11 +10,13 @@ module DL init_types() Struct.new(@types, contents) end + alias struct define_struct def define_union(contents) init_types() Union.new(@types, contents) end + alias union define_union class Memory def initialize(ptr, names, ty, len, enc, dec) @@ -56,8 +58,11 @@ module DL parse(contents) end - def new - ptr = DL::malloc(@size) + def new(size = nil) + if( !size ) + size = @size + end + ptr = DL::malloc(size) ptr.struct!(@tys, *@names) mem = Memory.new(ptr, @names, @ty, @len, @enc, @dec) return mem |