class CrossPlane::Config

Attributes

build_opts[RW]
common_opts[RW]
format_opts[RW]
lex_opts[RW]
minify_opts[RW]
opts[RW]
parse_opts[RW]

Public Class Methods

new(*args) click to toggle source
# File lib/crossplane/config.rb, line 11
def initialize(*args)
        self.common_opts = {

        }

        self.parse_opts = {
                'out' => {:name => :out, :aliases => ['-o'], :banner => '<string>', :desc => 'write output to a file', :type => :string, :required => false},
                'pretty' => {:name => :pretty, :desc => 'pretty print the json output', :type => :boolean, :required => false, :default => :false},
                'ignore' => {:name => :ignore, :banner => '<str>', :desc => 'ignore directives (comma-separated)', :type => :string, :required => false, :default => []},
                'no-catch' => {:name => :no_catch, :desc => 'only collect first error in file', :type => :boolean, :required => false, :default => :false},
                #'tb-onerror' => {:name => :tb_onerror, :desc => 'include tracebacks in config errors', :type => :boolean, :required => false},
                #'combine' => {:name => :combine, :desc => 'use includes to create one single file', :type => :boolean, :required => false},
                #'single' => {:name => :single, :desc => 'do not include other config files', :type => :boolean, :required => false},
                'include-comments' => {:name => :include_comments, :desc => 'include comments in json', :type => :boolean, :required => false, :default => :false},
                'strict' => {:name => :strict, :desc => 'raise errors for unknown directives', :type => :boolean, :required => false, :default => :false},
        }

        self.build_opts = {
                'dir' => {:name => :dir, :banner => '<string>', :desc => 'the base directory to build in', :type => :string, :required => false},
                'force' => {:name => :force, :desc => 'overwrite existing files', :type => :boolean, :required => false},
                'indent' => {:name => :indent, :banner => '<string>', :desc => 'number of spaces to indent output', :type => :numeric, :required => false, :default => 4},
                'tabs' => {:name => :tabs, :desc => 'indent with tabs instead of spaces', :type => :boolean, :required => false},
                #'no-headers' => {:name => :no_header2, :desc => 'do not write header to configsd', :type => :boolean, :required => false},
                'stdout' => {:name => :stdout, :desc => 'write configs to stdout instead', :type => :boolean, :required => false},
        }

        self.lex_opts = {
                'out' => {:name => :out, :aliases => ['-o'], :banner => '<string>', :desc => 'write output to a file', :type => :string, :required => false},
                'indent' => {:name => :indent, :aliases => ['-i'], :banner => '<int>', :desc => 'number of spaces to indent output', :type => :numeric, :required => false, :default => 4},
                'numbers' => {:name => :line_numbers, :aliases => ['-n'], :desc => 'include line numbers in json payload', :type => :boolean, :required => false, :default => true},
        }
end

Public Instance Methods

build_options() click to toggle source
# File lib/crossplane/config.rb, line 48
def build_options()
        return self.common_opts.merge(self.build_opts).map { |_k, v| v }
end
lex_options() click to toggle source
# File lib/crossplane/config.rb, line 52
def lex_options()
        return self.common_opts.merge(self.lex_opts).map { |_k, v| v }
end
parse_options() click to toggle source
# File lib/crossplane/config.rb, line 44
def parse_options()
        return self.common_opts.merge(self.parse_opts).map { |_k, v| v }
end