anchor.diff:          baseClass
           ctor
                   
  -
  +let populateTypeMappings () =
  +    doc.Document.XPathSelectElements("//types/type") |> Seq.iter populateTypeMapping
  +    doc.Document.XPathSelectElements("//union") |> Seq.iter populateUnionMapping
   
   let getAllRequestTypes () =
       sprintf """// Code generated by UpdateJson.fsx. Do not hand-edit!
  
positive.code: let populateTypeMapping (typeNode : XElement) =
      if typeNode.Element(!!"ref") <> null then
          mappedTypes <- mappedTypes.Add ((typeNode.Attribute(!!"name").Value), getCSharpType (typeNode.Element(!!"ref").Value))
  
  let populateTypeMappings () =
      doc.Document.XPathSelectElements("//types/type") |> Seq.iter populateTypeMapping
  
  let extractDoc (indent : int) (fieldNode : XElement) =
      let indentString = new String('\t', indent)
  
negative.code:     Map.empty
          .Add("String", "string")
  
  let mutable unionTypes =
      Map.empty
  
  let collect (f : XElement -> string) (x : seq<XElement>) : string =
      x |> Seq.map f |> String.concat ""
  
  