/// <summary> /// Gets the short name. /// </summary> public override string GetName() { if (name == null) { if (valueType.IsPointer()) { name = valueType.GetName() + " const"; } else { name = "const " + valueType.GetName(); } } return(name); }
/// <summary> /// Gets the short name. /// </summary> public override string GetName() { if (name == null) { StringBuilder builder = new StringBuilder(); builder.Append(returnType.GetName()); builder.Append("("); int numargs = arguments.Length; for (int i = 0; i < numargs; i++) { if (i > 0) { builder.Append(", "); } if (IsVariable() && i + 1 == numargs) { builder.Append("params "); } IChelaType arg = arguments[i]; builder.Append(arg.GetName()); } builder.Append(")"); name = builder.ToString(); } return(name); }
/// <summary> /// Gets the short name. /// </summary> public override string GetName() { if (name == null) { name = pointedType.GetName() + "*"; } return(name); }
/// <summary> /// Gets the matrix type short name. /// </summary> public override string GetName() { if (name == null) { name = primitiveType.GetName() + "*" + numrows + "x" + numcolumns; } return(name); }
/// <summary> /// Gets the short name. /// </summary> public override string GetName() { if (name == null) { name = primitiveType.GetName() + "*" + numcomponents; } return(name); }
public override AstNode Visit(UsingStatement node) { // Visit the using member. Expression member = node.GetMember(); member.Accept(this); // Cast the pseudo-scope. PseudoScope scope = (PseudoScope)node.GetScope(); // Get the member type. IChelaType memberType = member.GetNodeType(); if (memberType.IsMetaType()) { // Get the actual type. MetaType meta = (MetaType)memberType; memberType = meta.GetActualType(); // Only structure relatives. if (memberType.IsStructure() || memberType.IsClass() || memberType.IsInterface()) { scope.AddAlias(memberType.GetName(), (ScopeMember)memberType); } else { Error(node, "unexpected type."); } } else if (memberType.IsReference()) { // Only static members supported. ScopeMember theMember = (ScopeMember)member.GetNodeValue(); MemberFlags instanceFlags = MemberFlags.InstanceMask & theMember.GetFlags(); if (instanceFlags != MemberFlags.Static) { Error(node, "unexpected member type."); } // Store the member. scope.AddAlias(theMember.GetName(), theMember); } else if (memberType.IsNamespace()) { // Set the namespace chain. Namespace space = (Namespace)member.GetNodeValue(); scope.SetChainNamespace(space); } else { Error(node, "unsupported object to use."); } base.Visit(node); return(node); }
/// <summary> /// Array type short name. /// </summary> public override string GetName() { if (name == null) { name = valueType.GetName() + "[" + dimensions + "]"; if (readOnly) { name = "readonly " + name; } } return(name); }
/// <summary> /// Gets the short name. /// </summary> public override string GetName() { if (referencedType == null) { return("<null>&"); } if (name == null) { switch (referenceFlow) { case ReferenceFlow.In: name = "in "; break; case ReferenceFlow.Out: name = "out "; break; case ReferenceFlow.InOut: default: name = ""; break; } name += referencedType.GetName(); if (streamReference) { name += "$&"; } else { name += "&"; } } return(name); }