/* */ static VALUE Vector3_StrictEqual( VALUE self, VALUE anArgument ) { VALUE aVector = Vector3_ForceType( anArgument ); VALUE leftX = rb_funcall( self, rb_intern( "x" ), 0 ); VALUE leftY = rb_funcall( self, rb_intern( "y" ), 0 ); VALUE leftZ = rb_funcall( self, rb_intern( "z" ), 0 ); VALUE rightX = rb_funcall( aVector, rb_intern( "x" ), 0 ); VALUE rightY = rb_funcall( aVector, rb_intern( "y" ), 0 ); VALUE rightZ = rb_funcall( aVector, rb_intern( "z" ), 0 ); if( rb_funcall( leftX, rb_intern( "eql?" ), 1, rightX ) == Qtrue && rb_funcall( leftY, rb_intern( "eql?" ), 1, rightY ) == Qtrue && rb_funcall( leftZ, rb_intern( "eql?" ), 1, rightZ ) == Qtrue ) { return Qtrue; } else { return Qfalse; } }