class Aio::Module::InputStyle

Attributes

ext_info[RW]

外加信息,用于针对特殊情况

input_file[RW]

重要! 输入文件

input_info[RW]

信息

Public Class Methods

new(info={}) click to toggle source
# File lib/aio/core/module/input_style.rb, line 22
def initialize(info={})
        @input_info = info.dup
        set_defaults()
end

Public Instance Methods

author() click to toggle source
# File lib/aio/core/module/input_style.rb, line 89
def author;                   self.input_info[:author];                    end
check_file(file) click to toggle source

保证输出的file为Pathname类

# File lib/aio/core/module/input_style.rb, line 45
def check_file(file)
        if file.class != Pathname
                case file.class
                when String
                        file = Pathname.new(file)
                when File
                        file = Pathname.new(file.path)
                end
        end
        file
end
description() click to toggle source
# File lib/aio/core/module/input_style.rb, line 90
def description;  self.input_info[:description];  end
file_suffix() click to toggle source
# File lib/aio/core/module/input_style.rb, line 92
def file_suffix;      self.input_info[:file_suffix];       end
file_suffix?(file) click to toggle source

检查是否符合文件后缀,符合返回真

# File lib/aio/core/module/input_style.rb, line 63
def file_suffix?(file)
        if self.file_suffix.match(file)
                return true
        end
        return false
end
input_file=(file) click to toggle source
# File lib/aio/core/module/input_style.rb, line 84
def input_file=(file)
        file = check_file(file)
        @input_info[:input_file] = file
end
license() click to toggle source
# File lib/aio/core/module/input_style.rb, line 93
def license;                  self.input_info[:license];                   end
parse() click to toggle source

请重载此方法

# File lib/aio/core/module/input_style.rb, line 58
def parse
        raise ErrorModuleInput.new                   
end
pass_file() click to toggle source
# File lib/aio/core/module/input_style.rb, line 94
def pass_file;                self.input_info[:pass_file];          end
pass_file?(file) click to toggle source

检查是否符合pass_file, 符合返回真

# File lib/aio/core/module/input_style.rb, line 71
def pass_file?(file)
        self.pass_file.each do |pass|
                if pass.match(Aio::Base::Toolkit::String.safe(file))
                        return true
                end
        end
        return false
end
platform() click to toggle source
# File lib/aio/core/module/input_style.rb, line 91
def platform;                 self.input_info[:platform];                  end
set_defaults() click to toggle source
# File lib/aio/core/module/input_style.rb, line 27
def set_defaults
        self.input_info = {
                :author                             => nil,
                :description        => "No Input Description",
                # 产生文件的平台
                :platform                   => nil,
                :file_suffix        => nil,
                :pass_file          => nil,
                :license            => ::Aio::AIO_LICENSE,
        }.update(@input_info)

end
type() click to toggle source
# File lib/aio/core/module/input_style.rb, line 40
def type
        Aio::Module::InputStyle
end