What is your overall goal? Are you implementing a Ruby native library? Tomas
-----Original Message----- From: ironruby-core-boun...@rubyforge.org [mailto:ironruby-core-boun...@rubyforge.org] On Behalf Of Charles Strahan Sent: Monday, July 05, 2010 10:59 PM To: ironruby-core@rubyforge.org Subject: [Ironruby-core] Setting and initializing instance variables on RubyClasses Hello, How can I go about setting an instance variable on a RubyClass? Here's some code for context: [RubyClass("Graphics")] public class Graphics { [RubyMethod("frame_rate", RubyMethodAttributes.PublicSingleton)] public static int GetFrameRate(RubyClass self) { // What goes here? // I could use self.TryGetClassVariable, but that's a *class* variable, correct? // I want to achieve the same thing as "return @frame_rate", // not "return @@frame_rate" } [RubyMethod("frame_rate=", RubyMethodAttributes.PublicSingleton)] public static void SetFrameRate(RubyClass self, int frameRate) { // Same thing here. I could do this: // self.SetClassVariable("frame_rate", frameRate); // but I want to achieve the same as this: // @frame_rate = frame_rate } } Another option *just* dawned on me; how about these two: self.Context.SetInstanceVariable(self, "frame_rate", frameRate); self.Context.TryGetInstanceVariable(self, "frame_rate", out frameRate); Is that what I'm looking for? One more question: is there a way to get the library initializer to invoke a callback so that I may perform some initialization for the RubyClass itself? In the case above, I'd like to initialize the frame_rate when the RubyClass is created. As an example: class Graphics attr_accessor :frame_rate frame_rate = 40 end ... Graphics.frame_rate = something_else I'd like that "frame_rate = 40" to happen when the assembly is loaded by the IronRuby runtime, if possible. I'm sure I could type that into my auto-generated LibraryInitializer, but I'd rather do this declaratively, perhaps using Attributes (like RubyMethod and RubyClass, etc). Thanks, -Charles _______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core _______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core