# Code Review: YamlRefactoring1

**URL:** <https://www.ruby-forum.com/t/code-review-yamlrefactoring1/154779>\
**Category:** IronRuby\
**Created:** [December 3, 2008, 9:17pm UTC](https://www.ruby-forum.com/t/code-review-yamlrefactoring1/154779 "2008-12-03T21:17:40Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![grujildo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/94ad74/32.png) [@grujildo](https://www.ruby-forum.com/u/grujildo)\
**Post date:** [December 3, 2008, 9:17pm UTC](https://www.ruby-forum.com/t/code-review-yamlrefactoring1/154779/1 "2008-12-03T21:17:40Z")

</div>

tfpt review “/shelveset:YamlRefactoring1;REDMOND\tomat”  
Comment :  
Various Yaml related changes:

- 

```
Integer and Numeric now derives from RubyObject so that a new 

```

CLR type is not created when these classes are subclassed.

- 

```
All classes derived from RubyObject need to implement a 

```

deserializing constructor.

- 

```
If a class in C# library represented a Ruby class and also 

```

implemented its methods using RubyMethod attribute the static  
[RubyMethod] methods were visible on the singleton class of that class.  
This caused problems with method lookup. This shelveset adds a flag to  
the class loader that hides all CLR methods from a class that implements  
a Ruby class (via RubyClass attribute). This fix removes the necessity  
of splitting of classes into “Ops” and “real classes” artificially (an  
example of which is YAML::Stream).

- 

```
Refactors RubyTypeBuilder.DefineConstructors a little bit and 

```

fixes problem with constructors taking RubyClass - the generated code  
was unverifiable (an instruction was missing).

- 

```
Removes mscorlib dependency from Yaml tests so that they can be 

```

run by MRI as well.

Tomas

---

<div class="post-metadata">

**Author:** ![grujildo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/94ad74/32.png) [@grujildo](https://www.ruby-forum.com/u/grujildo)\
**Post date:** [December 3, 2008, 10:42pm UTC](https://www.ruby-forum.com/t/code-review-yamlrefactoring1/154779/2 "2008-12-03T22:42:56Z")

</div>

Looks great!

–  
Oleg
