         @fullName = value
       when 'label'
         @label = value
+
+# again, training will be key here
       when 'type'
         @type = new Type value
       when 'length'

        @actionOverrides[action.actionName] = action

    # smart members
      when 'sharingModel'
        @sharingModel = new SharingModel value
      when 'deploymentStatus'
        @deploymentStatus = new DeploymentStatus value
      when 'nameField'
        field = factory.build tag
        field.fullName = 'Name'

'use strict'

# when a tag comes up with child nodes, decide which one
# to create to hold those children
class Factory
  build: (tag) ->
    switch tag.tag
      when 'CustomObject'
        Builder = SObject

# note the class names are the tag names, but
#  - capitalized
#  - trailing 's' removed
      when 'fields', 'nameField'
        Builder = Field
      when 'picklistValues'
