Sha256: d9c98469bfaa107e2ef58bb4536e67ba6f37858332c6d0852b37ee5ddd7e405b

Contents?: true

Size: 1.07 KB

Versions: 5

Compression:

Stored size: 1.07 KB

Contents

# frozen_string_literal: true

# External dependencies are loaded here
require("irb")
require("socket")
require("concurrent")
require("puma")
require("rack")

# Zapp is a web server for Rack-based Ruby 3.0.0+ applications
module Zapp
  class ZappError < StandardError; end

  # The hash key in Ractor.current that stores the global Zapp::Configuration instance
  RACTOR_CONFIG_KEY = "ZAPP_CONFIG"

  class << self
    def config(reset: false)
      Ractor.current[RACTOR_CONFIG_KEY] = Zapp::Configuration.new if reset

      Ractor.current[RACTOR_CONFIG_KEY] ||= Zapp::Configuration.new
    end

    def configure
      yield(config)
    end
  end
end

require_relative("zapp/version")
require_relative("zapp/logger")
require_relative("zapp/configuration")
require_relative("zapp/input_stream")
require_relative("zapp/http_context/context")
require_relative("zapp/pipe")
require_relative("zapp/socket_pipe/sender")
require_relative("zapp/socket_pipe/receiver")
require_relative("zapp/worker")
require_relative("zapp/worker_pool")
require_relative("zapp/server")
require_relative("zapp/cli")

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
zapp-0.2.6 lib/zapp.rb
zapp-0.2.5 lib/zapp.rb
zapp-0.2.4 lib/zapp.rb
zapp-0.2.3 lib/zapp.rb
zapp-0.2.2 lib/zapp.rb