class Bpl::AST::ConstantDeclaration

Public Instance Methods

show(&blk) click to toggle source
# File lib/bpl/ast/declaration.rb, line 78
def show(&blk)
  names = @names.empty? ? "" : (@names.map(&blk) * ", " + ":")
  ord = ""
  if @order_spec && @order_spec[0]
    ord << ' <: '
    unless @order_spec[0].empty?
      ord << @order_spec[0].map{|c,p| (c ? 'unique ' : '') + p.to_s } * ", "
    end
  end
  ord << ' complete' if @order_spec && @order_spec[1]
  "#{yield :const} #{show_attrs(&blk)} #{'unique' if @unique} #{names} #{yield @type}#{ord};".fmt
end
signature() click to toggle source
# File lib/bpl/ast/declaration.rb, line 77
def signature; "const #{@names * ", "}: #{@type}" end