class HRX::Directory

A directory in an HRX archive.

Attributes

comment[R]

The comment that appeared before this directory, or ‘nil` if it had no preceding comment.

HRX file contents are always encoded as UTF-8.

This string is frozen.

path[R]

The path to this file, relative to the archive’s root, including the trailing ‘/`.

HRX paths are always ‘/`-separated and always encoded as UTF-8.

This string is frozen.

Public Class Methods

new(path, comment: nil) click to toggle source

Creates a new file with the given paths and comment.

Throws an HRX::ParseError if ‘path` is invalid, or an EncodingError if either argument can’t be converted to UTF-8.

The ‘path` may or may not end with a `/`. If it doesn’t a ‘/` will be added.

# File lib/hrx/directory.rb, line 41
def initialize(path, comment: nil)
  @comment = comment&.clone&.encode("UTF-8")&.freeze
  @path = HRX::Util.scan_path(StringScanner.new(path.encode("UTF-8")))
  @path << "/" unless @path.end_with?("/")
  @path.freeze
end