Class: Ree::Package
Instance Attribute Summary collapse
-
#default_links ⇒ Object
readonly
Returns the value of attribute default_links.
-
#entry_rpath ⇒ Object
readonly
Returns the value of attribute entry_rpath.
-
#gem_name ⇒ Object
readonly
Returns the value of attribute gem_name.
-
#module ⇒ Object
readonly
Returns the value of attribute module.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#objects_store ⇒ Object
readonly
Returns the value of attribute objects_store.
-
#preload ⇒ Object
readonly
Returns the value of attribute preload.
-
#schema_version ⇒ Object
readonly
Returns the value of attribute schema_version.
-
#tags ⇒ Object
readonly
Returns the value of attribute tags.
Instance Method Summary collapse
- #deps ⇒ Object
- #dir ⇒ Object
- #entry_loaded? ⇒ Boolean
- #env_vars ⇒ Object
- #gem? ⇒ Boolean
- #get_dep(name) ⇒ Object
- #get_env_var(name) ⇒ Object
- #get_object(name) ⇒ Nilor[Ree::Object]
-
#initialize(schema_version, name, entry_rpath, gem_name = nil) ⇒ Package
constructor
A new instance of Package.
- #loaded? ⇒ Boolean
- #objects ⇒ Object
- #preloaded? ⇒ Boolean
- #remove_object(name) ⇒ nil
- #reset ⇒ Object
- #schema_loaded? ⇒ Boolean
- #set_default_links(&block) ⇒ Object
- #set_dep(dep) ⇒ Object
- #set_deps(list) ⇒ Object
- #set_entry_loaded ⇒ Object
- #set_entry_rpath(val) ⇒ Object
- #set_env_var(var) ⇒ Object
- #set_env_vars(list) ⇒ Object
- #set_loaded ⇒ Object
- #set_module(mod) ⇒ Object
-
#set_object(object) ⇒ Nilor[Ree::Object]
Previous object version.
- #set_preload(val) ⇒ Object
- #set_preloaded(val) ⇒ Object
- #set_schema_loaded ⇒ Object
- #set_schema_version(val) ⇒ Object
- #set_tags(list) ⇒ Object
Constructor Details
#initialize(schema_version, name, entry_rpath, gem_name = nil) ⇒ Package
Returns a new instance of Package.
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/ree/core/package.rb', line 9 def initialize(schema_version, name, entry_rpath, gem_name = nil) @schema_version = schema_version @name = name @entry_rpath = entry_rpath @objects_store = {} @deps_store = {} @env_vars_store = {} @entry_loaded = false @schema_loaded = false @loaded = false @tags = [] @preload = {} @preloaded = false @gem_name = gem_name end |
Instance Attribute Details
#default_links ⇒ Object (readonly)
Returns the value of attribute default_links.
6 7 8 |
# File 'lib/ree/core/package.rb', line 6 def default_links @default_links end |
#entry_rpath ⇒ Object (readonly)
Returns the value of attribute entry_rpath.
6 7 8 |
# File 'lib/ree/core/package.rb', line 6 def entry_rpath @entry_rpath end |
#gem_name ⇒ Object (readonly)
Returns the value of attribute gem_name.
6 7 8 |
# File 'lib/ree/core/package.rb', line 6 def gem_name @gem_name end |
#module ⇒ Object (readonly)
Returns the value of attribute module.
6 7 8 |
# File 'lib/ree/core/package.rb', line 6 def module @module end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
6 7 8 |
# File 'lib/ree/core/package.rb', line 6 def name @name end |
#objects_store ⇒ Object (readonly)
Returns the value of attribute objects_store.
6 7 8 |
# File 'lib/ree/core/package.rb', line 6 def objects_store @objects_store end |
#preload ⇒ Object (readonly)
Returns the value of attribute preload.
6 7 8 |
# File 'lib/ree/core/package.rb', line 6 def preload @preload end |
#schema_version ⇒ Object (readonly)
Returns the value of attribute schema_version.
6 7 8 |
# File 'lib/ree/core/package.rb', line 6 def schema_version @schema_version end |
#tags ⇒ Object (readonly)
Returns the value of attribute tags.
6 7 8 |
# File 'lib/ree/core/package.rb', line 6 def @tags end |
Instance Method Details
#deps ⇒ Object
110 111 112 |
# File 'lib/ree/core/package.rb', line 110 def deps @deps_store.values end |
#dir ⇒ Object
90 91 92 |
# File 'lib/ree/core/package.rb', line 90 def dir @dir ||= @entry_rpath ? Pathname.new(@entry_rpath).dirname.parent.to_s : nil end |
#entry_loaded? ⇒ Boolean
82 83 84 |
# File 'lib/ree/core/package.rb', line 82 def entry_loaded? @entry_loaded end |
#env_vars ⇒ Object
133 134 135 |
# File 'lib/ree/core/package.rb', line 133 def env_vars @env_vars_store.values end |
#gem? ⇒ Boolean
94 95 96 |
# File 'lib/ree/core/package.rb', line 94 def gem? !!@gem_name end |
#get_dep(name) ⇒ Object
122 123 124 |
# File 'lib/ree/core/package.rb', line 122 def get_dep(name) @deps_store[name] end |
#get_env_var(name) ⇒ Object
145 146 147 |
# File 'lib/ree/core/package.rb', line 145 def get_env_var(name) @env_vars_store[name] end |
#get_object(name) ⇒ Nilor[Ree::Object]
174 175 176 |
# File 'lib/ree/core/package.rb', line 174 def get_object(name) @objects_store[name] end |
#loaded? ⇒ Boolean
66 67 68 |
# File 'lib/ree/core/package.rb', line 66 def loaded? @loaded end |
#objects ⇒ Object
178 179 180 |
# File 'lib/ree/core/package.rb', line 178 def objects @objects_store.values.flatten end |
#preloaded? ⇒ Boolean
34 35 36 |
# File 'lib/ree/core/package.rb', line 34 def preloaded? @preloaded end |
#remove_object(name) ⇒ nil
164 165 166 167 168 169 170 |
# File 'lib/ree/core/package.rb', line 164 def remove_object(name) if @objects_store[name] @objects_store.delete(name) end nil end |
#reset ⇒ Object
53 54 55 56 57 58 59 60 |
# File 'lib/ree/core/package.rb', line 53 def reset @entry_loaded = false @schema_loaded = false @loaded = false @deps_store = {} @env_vars_store = {} @preload = {} end |
#schema_loaded? ⇒ Boolean
86 87 88 |
# File 'lib/ree/core/package.rb', line 86 def schema_loaded? @schema_loaded end |
#set_default_links(&block) ⇒ Object
25 26 27 |
# File 'lib/ree/core/package.rb', line 25 def set_default_links(&block) @default_links = block; self end |
#set_dep(dep) ⇒ Object
115 116 117 118 119 |
# File 'lib/ree/core/package.rb', line 115 def set_dep(dep) old = @deps_store[dep.name] @deps_store[dep.name] = dep old end |
#set_deps(list) ⇒ Object
104 105 106 107 108 |
# File 'lib/ree/core/package.rb', line 104 def set_deps(list) list.each do |item| @deps_store[item.name] = item end end |
#set_entry_loaded ⇒ Object
74 75 76 |
# File 'lib/ree/core/package.rb', line 74 def set_entry_loaded @entry_loaded = true end |
#set_entry_rpath(val) ⇒ Object
44 45 46 |
# File 'lib/ree/core/package.rb', line 44 def set_entry_rpath(val) @entry_rpath = val; self end |
#set_env_var(var) ⇒ Object
138 139 140 141 142 |
# File 'lib/ree/core/package.rb', line 138 def set_env_var(var) old = @env_vars_store[var.name] @env_vars_store[var.name] = var old end |
#set_env_vars(list) ⇒ Object
127 128 129 130 131 |
# File 'lib/ree/core/package.rb', line 127 def set_env_vars(list) list.each do |item| @env_vars_store[item.name] = item end end |
#set_loaded ⇒ Object
70 71 72 |
# File 'lib/ree/core/package.rb', line 70 def set_loaded @loaded = true end |
#set_module(mod) ⇒ Object
99 100 101 |
# File 'lib/ree/core/package.rb', line 99 def set_module(mod) @module = mod; self end |
#set_object(object) ⇒ Nilor[Ree::Object]
Returns Previous object version.
151 152 153 154 155 156 157 158 159 160 |
# File 'lib/ree/core/package.rb', line 151 def set_object(object) if object.package_name != @name raise Ree::Error.new("package should only include objects from the same package") end existing = @objects_store[object.name] return existing if existing @objects_store[object.name] = object end |
#set_preload(val) ⇒ Object
62 63 64 |
# File 'lib/ree/core/package.rb', line 62 def set_preload(val) @preload = val; self end |
#set_preloaded(val) ⇒ Object
30 31 32 |
# File 'lib/ree/core/package.rb', line 30 def set_preloaded(val) @preloaded = val; self end |
#set_schema_loaded ⇒ Object
78 79 80 |
# File 'lib/ree/core/package.rb', line 78 def set_schema_loaded @schema_loaded = true end |
#set_schema_version(val) ⇒ Object
39 40 41 |
# File 'lib/ree/core/package.rb', line 39 def set_schema_version(val) @schema_version = val; self end |
#set_tags(list) ⇒ Object
49 50 51 |
# File 'lib/ree/core/package.rb', line 49 def (list) @tags = (@tags + list).map(&:to_s).uniq; self end |