class Object
Constants
- UOS
Public Class Methods
extend(__file__, &block)
click to toggle source
Generic ecosystem extension hook, for plugins and such
UnderOs.extend __FILE__ do |app| app.extra_things.. end
# File lib/under-os-core.rb, line 11 def self.extend(__file__, &block) UnderOs.setup_callbacks[__file__] = block UnderOs.setup_callbacks.size == 1 && Motion::Project::App.instance_eval do alias :setup_before_under_os :setup def setup(*args, &block) config.setup_blocks << proc do |app| UnderOs.setup_callbacks.each do |__file__, block| Dir.glob(File.dirname(__file__) + '/**/*.rb').sort.each do |file| position = app.files.index {|i| i.slice(0, 2) == "./" } app.files.insert(position, file) if file != __file__ end module_assets_folder = File.dirname(__file__) + "/assets" app.resources_dirs << module_assets_folder if File.exists?(module_assets_folder) block.call(app) if block end end setup_before_under_os *args, &block end end end
setup_callbacks()
click to toggle source
# File lib/under-os-core.rb, line 35 def self.setup_callbacks @callbacks ||= {} end
Public Instance Methods
setup(*args, &block)
click to toggle source
# File lib/under-os-core.rb, line 15 def setup(*args, &block) config.setup_blocks << proc do |app| UnderOs.setup_callbacks.each do |__file__, block| Dir.glob(File.dirname(__file__) + '/**/*.rb').sort.each do |file| position = app.files.index {|i| i.slice(0, 2) == "./" } app.files.insert(position, file) if file != __file__ end module_assets_folder = File.dirname(__file__) + "/assets" app.resources_dirs << module_assets_folder if File.exists?(module_assets_folder) block.call(app) if block end end setup_before_under_os *args, &block end
to_json(pretty=nil)
click to toggle source
# File lib/core/object.rb, line 2 def to_json(pretty=nil) JSON.generate(self, pretty) end