Sha256: b76ce5e80ba5313314cd9fe15422463b7e41c4f85f17d5afc0c3b76edeec9749

Contents?: true

Size: 457 Bytes

Versions: 1

Compression:

Stored size: 457 Bytes

Contents

module EnvHound
  class Parser
    # TODO: Create a separete list for required and optional env vars
    # fetch() - required
    # [] - optional
    REGEXPS = [
      /ENV\[["'](?<variable>\w+)["']\]/,
      /ENV\.fetch\(["'](?<variable>\w+)["']\)/
    ].freeze

    def call(content:)
      REGEXPS.map do |regexp|
        content.scan(regexp).map do
          Regexp.last_match[:variable]
        end
      end.flatten.uniq
    end
  end
end

ENV['lol']

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
env-hound-0.1.0.pre.pre lib/env_hound/parser.rb