runtime —— objc.h

runtime

一个c语言库,OC是C语言的超级,封装,即OC运行时会全部转化为C语言,即runtime的函数库。

此篇目的是写所有的runtime函数,打印出来,空闲时间去看看。

objc.h文件

typedef struct   objc_class * Class;

struct   objc_object {
        Class _Nonnull isa    OBJC_ISA_AVAILABILITY;
}

typedef struct objc_object   *id;

typedef struct objc_selector  *SEL;

typedef  void (*IMP)(void /* id, SEL,  ...*/)
typedef  id  _Nullable (* IMP)(id _ Nonnull, SEL _Nonnull, ...)

OBJC_EXPORT const char * _Nonnull  sel_getName(SEL _Nonnull sel) OBJC_AVAILABLE (10.0,2.0.9.0...)

OBJC_EXPORT SEL _Nonnull sel_registerName(const  char * _Nonnul str)

OBJC_EXPORT const char * _Nonnull  object_getClassName(id _Nullable obj)

OBJC_EXPORT void * _Nullable object_getIndexedIvars(id _Nullable obj) OBJC_AVAILABLE(10.0, 2.0, 9.0, 1.0, 2.0)
    OBJC_ARC_UNAVAILABLE; (ARC 下不可用)

OBJC_EXPORT BOOL sel_isMapped(SEL _Nonnull sel)

OBJC_EXPORT SEL _Nonnull sel_getUid(const char * _Nonnull str)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 5,879评论 0 9
  • 这篇文章完全是基于南峰子老师博客的转载 这篇文章完全是基于南峰子老师博客的转载 这篇文章完全是基于南峰子老师博客的...
    西木阅读 30,745评论 33 466
  • 对于从事 iOS 开发人员来说,所有的人都会答出【runtime 是运行时】什么情况下用runtime?大部分人能...
    梦夜繁星阅读 9,111评论 7 64
  • 有人的,总是还没爱就开始害怕了 1 最近一直被一部经典刷屏 《大话西游》 年少...
    巴拿拿阅读 3,030评论 0 3
  • “一个没有书店的地方,不能称之为一个地方” 其实我并不是一个爱读书的人,除了学校的教育义务的书,其他的课...
    花自开阅读 2,241评论 0 0

友情链接更多精彩内容