Module: OSX::OCClsWrapper
- Includes:
- NSBehaviorAttachment, NSKVCBehaviorAttachment, OCObjWrapper
- Defined in:
- src/objc/mdl_objwrapper.m,
src/ruby/osx/objc/oc_import.rb,
src/objc/mdl_objwrapper.m
Overview
Utilities for communicating Objective-C classes.
Objective-C classes in Ruby world includes OCObjWrapper and extends OCClsWrapper.
Constant Summary
Constant Summary
Constants included from NSBehaviorAttachment
NSBehaviorAttachment::ERRMSG_FOR_RESTRICT_NEW, NSBehaviorAttachment::OCTYPES
Instance Method Summary (collapse)
-
- (self) _objc_alias_class_method
Aliases Objective-C method to given new name.
-
- (self) _objc_alias_method
Aliases Objective-C method to given new name.
-
- (Object) method_added(sym)
Overrides Module#method_added.
-
- (String) objc_class_method_type
Returns Objective-C type encodings of a given selector.
-
- (Array) objc_class_methods
Returns an array of Objective-C class methods of the reciever class.
-
- (String) objc_instance_method_type
Returns Objective-C type encodings of a given selector.
-
- (Array) objc_instance_methods
Returns an array of Objective-C instance methods of the reciever class.
-
- (Object) singleton_method_added(sym)
Overrides BasicObject#singleton_method_added.
Methods included from NSKVCBehaviorAttachment
#kvc_accessor, #kvc_array_accessor, #kvc_depends_on, #kvc_reader, #kvc_wrapper, #kvc_wrapper_reader, #kvc_wrapper_writer, #kvc_writer
Methods included from NSBehaviorAttachment
#_no_param_method?, #_ns_behavior_method_added, #_ns_enable_override?, #_objc_export, #_types_to_typefmt, #def_objc_method, #ib_action, #ib_outlets, #new, #ns_inherited, #ns_inherited?, #ns_outlets, #ns_overrides, #objc_alias_class_method, #objc_alias_method, #objc_class_method, #objc_method
Methods included from OCObjWrapper
#method_missing, #objc_method_type, #objc_methods, #objc_send, #ocm_respond_to?, #ocm_send, #ocnil?, #to_s
Methods included from NSKeyValueCodingAttachment
#rbSetValue_forKey, #rbValueForKey
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class OSX::OCObjWrapper
Instance Method Details
- (self) _objc_alias_class_method
Aliases Objective-C method to given new name.
754 755 756 757 758 759 760 761 |
# File 'src/objc/mdl_objwrapper.m', line 754
static VALUE
wrapper_objc_alias_class_method (VALUE rcv, VALUE new, VALUE old)
{
id oc_rcv;
rbobj_to_nsobj(rcv, &oc_rcv);
_objc_alias_method(object_getClass(oc_rcv), new, old);
return rcv;
}
|
- (self) _objc_alias_method
Aliases Objective-C method to given new name.
739 740 741 742 743 744 745 746 |
# File 'src/objc/mdl_objwrapper.m', line 739
static VALUE
wrapper_objc_alias_method (VALUE rcv, VALUE new, VALUE old)
{
id oc_rcv;
rbobj_to_nsobj(rcv, &oc_rcv);
_objc_alias_method((Class)oc_rcv, new, old);
return rcv;
}
|
- (Object) method_added(sym)
Overrides Module#method_added.
768 769 770 771 |
# File 'src/ruby/osx/objc/oc_import.rb', line 768 def method_added(sym) _ns_behavior_method_added(sym, false) _kvc_behavior_method_added(sym) end |
- (String) objc_class_method_type
Returns Objective-C type encodings of a given selector.
699 700 701 702 703 704 705 706 707 708 709 710 |
# File 'src/objc/mdl_objwrapper.m', line 699
static VALUE
wrapper_objc_class_method_type (VALUE rcv, VALUE name)
{
id oc_rcv;
const char* str;
rbobj_to_nsobj(rcv, &oc_rcv);
name = _name_to_selstr (name);
str = _objc_method_type (object_getClass(oc_rcv), StringValuePtr(name));
if (str == NULL) return Qnil;
return rb_str_new2(str);
}
|
- (Array) objc_class_methods
Returns an array of Objective-C class methods of the reciever class. Like Object#sigleton_methods.
612 613 614 615 616 617 618 619 620 621 622 623 624 |
# File 'src/objc/mdl_objwrapper.m', line 612
static VALUE
wrapper_objc_class_methods (int argc, VALUE* argv, VALUE rcv)
{
VALUE ary;
id oc_rcv;
int recur;
recur = (argc == 0) ? 1 : RTEST(argv[0]);
ary = rb_ary_new();
rbobj_to_nsobj(rcv, &oc_rcv);
_ary_push_objc_methods (ary, object_getClass(oc_rcv), recur);
return ary;
}
|
- (String) objc_instance_method_type
Returns Objective-C type encodings of a given selector.
680 681 682 683 684 685 686 687 688 689 690 691 |
# File 'src/objc/mdl_objwrapper.m', line 680
static VALUE
wrapper_objc_instance_method_type (VALUE rcv, VALUE name)
{
id oc_rcv;
const char* str;
rbobj_to_nsobj(rcv, &oc_rcv);
name = _name_to_selstr (name);
str = _objc_method_type (oc_rcv, StringValuePtr(name));
if (str == NULL) return Qnil;
return rb_str_new2(str);
}
|
- (Array) objc_instance_methods
Returns an array of Objective-C instance methods of the reciever class. Like Module#instance_methods.
593 594 595 596 597 598 599 600 601 602 603 604 605 |
# File 'src/objc/mdl_objwrapper.m', line 593
static VALUE
wrapper_objc_instance_methods (int argc, VALUE* argv, VALUE rcv)
{
VALUE ary;
id oc_rcv;
int recur;
recur = (argc == 0) ? 1 : RTEST(argv[0]);
ary = rb_ary_new();
rbobj_to_nsobj(rcv, &oc_rcv);
_ary_push_objc_methods (ary, oc_rcv, recur);
return ary;
}
|
- (Object) singleton_method_added(sym)
Overrides BasicObject#singleton_method_added.
763 764 765 |
# File 'src/ruby/osx/objc/oc_import.rb', line 763 def singleton_method_added(sym) _ns_behavior_method_added(sym, true) end |