module Vobject

Constants

MAX_LINE_WIDTH
VERSION

Public Class Methods

fold_line(line) click to toggle source

This implements the line folding as specified in tools.ietf.org/html/rfc6350#section-3.2 NOTE: the “line” here is not including the trailing n

# File lib/vobject.rb, line 11
def fold_line(line)
  folded_line    = line[0, MAX_LINE_WIDTH]
  remainder_line = line[MAX_LINE_WIDTH, line.length - MAX_LINE_WIDTH] || ""

  max_width = MAX_LINE_WIDTH - 1

  (0..((remainder_line.length - 1) / max_width)).each do |i|
    folded_line << "\n "
    folded_line << remainder_line[i * max_width, max_width]
  end

  folded_line
end
unfold(str) click to toggle source
# File lib/vobject.rb, line 4
def unfold(str)
  str.gsub(/(\r|\n|\r\n)[ \t]/, "")
end

Public Instance Methods

to_s() click to toggle source
# File lib/vobject/parametervalue.rb, line 9
def to_s
  value
end

Private Instance Methods

default_value_type() click to toggle source
# File lib/vobject/parametervalue.rb, line 19
def default_value_type
  "text"
end
name() click to toggle source
# File lib/vobject/parametervalue.rb, line 15
def name
  prop_name
end
raise_invalid_initialization() click to toggle source
# File lib/vobject/parametervalue.rb, line 23
def raise_invalid_initialization
  raise "vObject property initialization failed"
end