class FunctionsFramework::Function::LazyGlobal

A lazy evaluator for a global @private

Public Class Methods

new(block) click to toggle source
# File lib/functions_framework/function.rb, line 172
def initialize block
  @block = block
  @value = nil
  @mutex = ::Mutex.new
end

Public Instance Methods

value() click to toggle source
# File lib/functions_framework/function.rb, line 178
def value
  @mutex.synchronize do
    if @block
      @value = @block.call
      @block = nil
    end
    @value
  end
end