/// <summary>
 /// Translate a SingleValueCastNode.
 /// </summary>
 /// <param name="nodeIn">The node to be translated.</param>
 /// <returns>The translated node.</returns>
 public override QueryNode Visit(SingleValueCastNode nodeIn)
 {
     return(nodeIn.Source == null ?
            nodeIn :
            new SingleValueCastNode(
                (SingleValueNode)nodeIn.Source.Accept(this),
                (IEdmComplexType)nodeIn.TypeReference.Definition));
 }
 /// <summary>
 /// Writes single value property cast node to string.
 /// </summary>
 /// <param name="node">Node to write to string</param>
 /// <returns>String representation of node.</returns>
 private static string ToString(SingleValueCastNode node)
 {
     return(tabHelper.Prefix + "SingleValueCastNode" +
            tabHelper.Indent(() =>
                             tabHelper.Prefix + "TypeReference = " + node.TypeReference +
                             tabHelper.Prefix + "Source = " + ToString(node.Source)
                             ));
 }
Example #3
0
        public override QueryNode Visit(SingleValueCastNode nodeIn)
        {
            SingleValueNode?source = nodeIn.Source == null ? null : (SingleValueNode)Visit(nodeIn.Source);

            if (nodeIn.Source != source)
            {
                nodeIn = new SingleValueCastNode(source, (IEdmPrimitiveType)nodeIn.TypeReference.Definition);
            }
            return(nodeIn);
        }
 /// <summary>
 /// Translates a <see cref="SingleValueCastNode"/> into a corresponding <see cref="string"/>.
 /// </summary>
 /// <param name="node">The node to translate.</param>
 /// <returns>The translated string of SingleValueCastNode.</returns>
 public override string Visit(SingleValueCastNode node)
 {
     return(this.TranslatePropertyAccess(node.Source, node.TypeReference.Definition.ToString()));
 }
 /// <summary>
 /// Translates a <see cref="SingleValueCastNode"/> into a corresponding <see cref="String"/>.
 /// </summary>
 /// <param name="node">The node to translate.</param>
 /// <returns>The translated String of SingleValueCastNode.</returns>
 public override String Visit(SingleValueCastNode node)
 {
     ExceptionUtils.CheckArgumentNotNull(node, "node");
     return(this.TranslatePropertyAccess(node.Source, node.TypeReference.Definition.ToString()));
 }
Example #6
0
 /// <summary>
 /// Visit an SingleValueCastNode
 /// </summary>
 /// <param name="nodeIn">the node to visit</param>
 /// <returns>The translated expression</returns>
 public override Expression Visit(SingleValueCastNode nodeIn)
 {
     this.CheckArgumentNull(nodeIn, "node");
     return(this.TranslateSingleValueCastAccess(nodeIn.Source, nodeIn.TypeReference));
 }
 /// <summary>
 /// Visit an SingleValueCastNode
 /// </summary>
 /// <param name="nodeIn">the node to visit</param>
 /// <returns>Defined by the implementer</returns>
 public virtual T Visit(SingleValueCastNode nodeIn)
 {
     throw new NotImplementedException();
 }
Example #8
0
 /// <summary>
 /// Visit a SingleValueCastNode
 /// </summary>
 /// <param name="nodeIn">the node to visit</param>
 /// <returns>true, indicating that the node has been visited.</returns>
 public override bool Visit(SingleValueCastNode nodeIn)
 {
     validate(nodeIn);
     validate(nodeIn.TypeReference.Definition);
     return(true);
 }
 /// <summary>
 /// Writes single value property cast node to string.
 /// </summary>
 /// <param name="node">Node to write to string</param>
 /// <returns>String representation of node.</returns>
 private static string ToString(SingleValueCastNode node)
 {
     return tabHelper.Prefix + "SingleValueCastNode" +
         tabHelper.Indent(() =>
             tabHelper.Prefix + "TypeReference = " + node.TypeReference +
             tabHelper.Prefix + "Source = " + ToString(node.Source)
         );
 }