class NRSER::Types::Not
Negation {Type} - A {Type} that parameterizes another {#type} by admitting values that the {#type} does not.
@note
Construct {Not} types using the {.Not} factory.
Attributes
type[R]
The type this one isn't.
@return [Type]
Public Class Methods
new(type, **options)
click to toggle source
Instantiate a new `NRSER::Types::Not`.
Calls superclass method
# File lib/nrser/types/not.rb, line 42 def initialize type, **options super **options @type = NRSER::Types.make type end
Public Instance Methods
default_name()
click to toggle source
# File lib/nrser/types/not.rb, line 61 def default_name "#{ NOT }#{ type.name }" end
default_symbolic()
click to toggle source
# File lib/nrser/types/not.rb, line 56 def default_symbolic "#{ NRSER::Types.Top.symbolic }#{ COMPLEMENT }#{ type.symbolic }" end
explain()
click to toggle source
# File lib/nrser/types/not.rb, line 66 def explain "#{ self.class.demod_name }<#{ type.explain }>" end