Sha256: 4ca7dddcdf28cc104381fa55d591844f3d8441d0cfd886086ed2c0ca4cec4542
Contents?: true
Size: 1.75 KB
Versions: 4
Compression:
Stored size: 1.75 KB
Contents
module Yoda module Store module Objects VALUE_REGEXP = /\A[0-9a-z]/ MODULE_TAIL_PATTERN = /(?:::(\w+)|^(\w+))$/ require 'yoda/store/objects/serializable' require 'yoda/store/objects/addressable' require 'yoda/store/objects/patchable' require 'yoda/store/objects/base' require 'yoda/store/objects/connected_delegation' require 'yoda/store/objects/namespace_object' require 'yoda/store/objects/class_object' require 'yoda/store/objects/value_object' require 'yoda/store/objects/overload' require 'yoda/store/objects/meta_class_object' require 'yoda/store/objects/method_object' require 'yoda/store/objects/merger' require 'yoda/store/objects/module_object' require 'yoda/store/objects/patch' require 'yoda/store/objects/patch_set' require 'yoda/store/objects/tag' require 'yoda/store/objects/libraries_status' require 'yoda/store/objects/library' require 'yoda/store/objects/serializable_set' require 'yoda/store/objects/map' class << self # @param hsh [Hash] # @param [Addressable, nil] def deserialize(hsh) case hsh[:type].to_sym when :class ClassObject.new(hsh) when :module ModuleObject.new(hsh) when :meta_class MetaClassObject.new(hsh) when :value ValueObject.new(hsh) when :method MethodObject.new(hsh) end end # @param path [Model::Path, String] # @return [Array<Path>] def lexical_scopes_of(path) Model::Path.build(path).parent_paths.map { |name| Model::Path.build(name) } + [Model::Path.new('Object')] end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems