Esempio n. 1
0
        private NameNode TraverseThroughReferenceName(TypeReference reference, StartOfTypeNode startOfTypeNode)
        {
            NameNode deepestNameNode;

            if ((reference.IsArray == false) && (reference.IsByReference == false) && (reference.IsPointer == false))
            {
                deepestNameNode = startOfTypeNode.GetNamespace(reference.GetNamespace()).GetName(reference.Name);
                deepestNameNode = GoDeeperIntoGenericArgumentList(reference, deepestNameNode);
            }
            else
            {
                var referenceAsTypeSpecification = reference as TypeSpecification;
                deepestNameNode = TraverseThroughReferenceName(referenceAsTypeSpecification.ElementType, startOfTypeNode);
                deepestNameNode = deepestNameNode.AddTypeSpecification(referenceAsTypeSpecification);
            }
            return(deepestNameNode);
        }
Esempio n. 2
0
 public StartOfTypeNode AddAnotherArgument()
 {
     andNode = andNode ?? new StartOfTypeNode();
     return(andNode);
 }
Esempio n. 3
0
 public StartOfTypeNode StartArgumentList()
 {
     startNode = startNode ?? new StartOfTypeNode();
     return(startNode);
 }