class ExodusVersion
  # @private
  major: undefined
  # @private
  minor: undefined
  # @private
  patch: undefined

  @create$int$int$int: (major, minor, patch, o) ->
    if !o? then o = new ExodusVersion()
    o.major = major
    o.minor = minor
    o.patch = patch
    return o

  @CURRENT: ExodusVersion.create$int$int$int(1, 0, 0)

  getMajor: () ->
    return @major

  getMinor: () ->
    return @minor

  getPatch: () ->
    return @patch

  toString: () ->
    builder = ''
    builder += 'Exodus '
    builder += @major.toString()
    builder += '.'
    builder += @minor.toString()
    builder += '.'
    builder += @patch.toString()
    return builder

exports.ExodusVersion = ExodusVersion
