本文简要介绍ruby语言中 Marshal.dump
的用法。
用法
dump( obj [, anIO] , limit=-1 ) → anIO
序列化 obj 和所有后代对象。如果指定了anIO,则将序列化数据写入其中,否则数据将作为 String
返回。如果指定了限制,则子对象的遍历将被限制在该深度。如果 limit 为负数,则不会执行深度检查。
class Klass
def initialize(str)
@str = str
end
def say_hello
@str
end
end
(不产生输出)
o = Klass.new("hello\n")
data = Marshal.dump(o)
obj = Marshal.load(data)
obj.say_hello #=> "hello\n"
Marshal
无法转储以下对象:
-
匿名类/模块。
-
与系统相关的对象(例如:
Dir
、File::Stat
、IO
、File
、Socket
等) -
MatchData
、数据、Method
、UnboundMethod
、Proc
、Thread
、ThreadGroup
、Continuation
的实例 -
定义单例方法的对象
相关用法
- Ruby Marshal.load用法及代码示例
- Ruby Marshal模块用法及代码示例
- Ruby Markdown类用法及代码示例
- Ruby Markup类用法及代码示例
- Ruby Markup.add_regexp_handling用法及代码示例
- Ruby MatchData.pre_match用法及代码示例
- Ruby Matrix lup()用法及代码示例
- Ruby Matrix unitary?()用法及代码示例
- Ruby Matrix symmetric?()用法及代码示例
- Ruby Matrix t()用法及代码示例
- Ruby Matrix identity()用法及代码示例
- Ruby Matrix hash()用法及代码示例
- Ruby Matrix hadamard_product()用法及代码示例
- Ruby Matrix singular?()用法及代码示例
- Ruby Math sqrt()用法及代码示例
- Ruby Matrix round()用法及代码示例
- Ruby Matrix collect()用法及代码示例
- Ruby Math.acosh用法及代码示例
- Ruby Matrix hermitian?()用法及代码示例
- Ruby Matrix row_vectors()用法及代码示例
- Ruby Matrix conjugate()用法及代码示例
- Ruby Math.asinh用法及代码示例
- Ruby Matrix cofactor()用法及代码示例
- Ruby Matrix rectangular()用法及代码示例
- Ruby Matrix component()用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Marshal.dump。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。