module Tros::Name
Public Class Methods
add_name(names, new_schema)
click to toggle source
Add a new schema object to the names dictionary (in place).
# File lib/tros/schema.rb 390 def self.add_name(names, new_schema) 391 new_fullname = new_schema.fullname 392 if Tros::Schema::VALID_TYPES.include?(new_fullname) 393 raise SchemaParseError, "#{new_fullname} is a reserved type name." 394 elsif names.nil? 395 names = {} 396 elsif names.has_key?(new_fullname) 397 raise SchemaParseError, "The name \"#{new_fullname}\" is already in use." 398 end 399 400 names[new_fullname] = new_schema 401 names 402 end
extract_namespace(name, namespace)
click to toggle source
# File lib/tros/schema.rb 381 def self.extract_namespace(name, namespace) 382 parts = name.split('.') 383 if parts.size > 1 384 namespace, name = parts[0..-2].join('.'), parts.last 385 end 386 return name, namespace 387 end
make_fullname(name, namespace)
click to toggle source
# File lib/tros/schema.rb 404 def self.make_fullname(name, namespace) 405 if !name.include?('.') && !namespace.nil? 406 namespace + '.' + name 407 else 408 name 409 end 410 end