Class: Jabara::ParseCom::Schema::String
- Inherits:
-
Object
- Object
- Jabara::ParseCom::Schema::String
- Defined in:
- lib/jabara/parse_com/schema.rb
Instance Method Summary collapse
-
#initialize(max: nil, default: nil) ⇒ String
constructor
default = nil の場合はnullを許容する.
- #parse(data) ⇒ Object
Constructor Details
#initialize(max: nil, default: nil) ⇒ String
default = nil の場合はnullを許容する
89 90 91 92 93 94 |
# File 'lib/jabara/parse_com/schema.rb', line 89 def initialize(max: nil, default: nil) # default = nil の場合はnullを許容する raise TypeError, 'default must be string' unless default.is_a? ::String or default.nil? raise TypeError, 'max must be integer' unless max.is_a? ::Integer or max.nil? @max = max @default = default end |
Instance Method Details
#parse(data) ⇒ Object
96 97 98 99 100 101 102 |
# File 'lib/jabara/parse_com/schema.rb', line 96 def parse(data) return ::.null if data.nil? and @default.nil? return @default if data.nil? raise TypeError, 'data must be string' unless data.is_a? ::String or default.nil? data = data.slice(0, @max) unless @max.nil? ::.primitive(:string, data) end |