Sha256: 2e8a1a390a0a2d7dbd4956266ec032dc227a5a6f245d6c12bf73aa6620f18480

Contents?: true

Size: 1.5 KB

Versions: 4

Compression:

Stored size: 1.5 KB

Contents

# encoding: utf-8

module Antelope
  module Ace

    # Defines an error that can occur within the Ace module.  All
    # errors that are raised within the Ace module are subclasses of
    # this.
    class Error < Antelope::Error
    end

    # Used primarily in the {Compiler}, this is raised when the
    # version requirement of the Ace file doesn't match the running
    # version of Ace.
    class IncompatibleVersionError < Error
    end

    # Used primarily in the {Scanner}, this is raised when an input
    # is malformed.  The message should contain a snippet of the input
    # which caused the error.
    class SyntaxError < Error
    end

    # This is used primarily in the {Grammar}; if a rule references a
    # token (a nonterminal or a terminal) that was not previously
    # defined, this is raised.
    class UndefinedTokenError < Error
    end

    # Primarily used in the {Compiler}, if a scanner token appears
    # that should not be in the current state, this is raised.
    class InvalidStateError < Error
    end

    # Primarily used in the {Grammar} (specifically
    # {Grammar::Generation}), if the grammar could not determine the
    # generator to use for the generation, it raises this.
    class NoTypeError < Error
    end

    # Primarily used in the {Compiler}, it is raised if it encounters
    # a directive it cannot handle.  This is more to warn the
    # developer that a directive they wrote may not be accepted by any
    # generator.
    class NoDirectiveError < Error
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
antelope-0.2.0 lib/antelope/ace/errors.rb
antelope-0.1.11 lib/antelope/ace/errors.rb
antelope-0.1.10 lib/antelope/ace/errors.rb
antelope-0.1.9 lib/antelope/ace/errors.rb