Class: Roger::Rogerfile
- Inherits:
-
Object
- Object
- Roger::Rogerfile
- Defined in:
- lib/roger/rogerfile.rb
Overview
Loader for rogerfile
Defined Under Namespace
Classes: Context
Instance Attribute Summary collapse
Instance Method Summary collapse
-
#initialize(project, path = nil) ⇒ Rogerfile
constructor
A new instance of Rogerfile.
-
#load ⇒ Object
Actually load the rogerfile.
-
#loaded? ⇒ Boolean
Wether or not the rogerfile has been loaded.
- #release(options = {}) {|release| ... } ⇒ Object
- #serve(options = {}) {|server| ... } ⇒ Object (also: #server)
- #test(options = {}) {|test| ... } ⇒ Object
Constructor Details
#initialize(project, path = nil) ⇒ Rogerfile
Returns a new instance of Rogerfile.
30 31 32 33 |
# File 'lib/roger/rogerfile.rb', line 30 def initialize(project, path = nil) @project = project @path = (path && Pathname.new(path)) || Pathname.new(project.path + "Rogerfile") end |
Instance Attribute Details
#path ⇒ Object
28 29 30 |
# File 'lib/roger/rogerfile.rb', line 28 def path @path end |
#project ⇒ Object
28 29 30 |
# File 'lib/roger/rogerfile.rb', line 28 def project @project end |
Instance Method Details
#load ⇒ Object
Actually load the rogerfile
36 37 38 39 40 41 42 43 |
# File 'lib/roger/rogerfile.rb', line 36 def load return unless File.exist?(@path) && !self.loaded? @source = File.read(@path) context = Context.new(self) eval @source, context.binding, @path.to_s, 1 # rubocop:disable Lint/Eval @loaded = true end |
#loaded? ⇒ Boolean
Wether or not the rogerfile has been loaded
46 47 48 |
# File 'lib/roger/rogerfile.rb', line 46 def loaded? @loaded end |
#release(options = {}) {|release| ... } ⇒ Object
50 51 52 53 54 |
# File 'lib/roger/rogerfile.rb', line 50 def release( = {}) release = project.release() yield(release) if block_given? release end |
#serve(options = {}) {|server| ... } ⇒ Object Also known as: server
56 57 58 59 60 |
# File 'lib/roger/rogerfile.rb', line 56 def serve( = {}) server = project.server() yield(server) if block_given? server end |
#test(options = {}) {|test| ... } ⇒ Object
64 65 66 67 68 |
# File 'lib/roger/rogerfile.rb', line 64 def test( = {}) test = project.test() yield(test) if block_given? test end |