码迷,mamicode.com
首页 > 其他好文 > 详细

3-16 提取任务(第6章)

时间:2018-03-16 18:36:48      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:attribute   不用   span   method   eve   gpo   val   使用   任务   

The boss‘s mission:

写一个类宏,功能与attr_accessor类似,但会创建经过校验的属性,名字attr_checked。

需求:

  1. 接受属性名,和block。block用于校验属性,如果对一个属性赋值,非true就报错。
  2. 只给特定的类用,所以不要放到标准库中。只有当类加了CheckedAttributes模块,才拥有这个功能。
A Development Plan:

开发计划:

  1. 使用eval方法快速编写内核方法add_checked_attribute,用来为类添加一个校验属性。
  2. 重构这个方法,不用eval.
  3.  通过代码块来校验属性。
  4. 把这个方法修改为名为attr_checked的类宏,让它对所有类可用。
  5. 写一个模块,通过hook method为指定的类添加attr_checked方法。

 

3-16 提取任务(第6章)

标签:attribute   不用   span   method   eve   gpo   val   使用   任务   

原文地址:https://www.cnblogs.com/chentianwei/p/8583607.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!