Expression.RightShift Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Crea un objeto BinaryExpression que representa una operación de desplazamiento a la derecha bit a bit.
Sobrecargas
| RightShift(Expression, Expression) |
Crea un objeto BinaryExpression que representa una operación de desplazamiento a la derecha bit a bit. |
| RightShift(Expression, Expression, MethodInfo) |
Crea un objeto BinaryExpression que representa una operación de desplazamiento a la derecha bit a bit. |
RightShift(Expression, Expression)
- Source:
- BinaryExpression.cs
- Source:
- BinaryExpression.cs
- Source:
- BinaryExpression.cs
Crea un objeto BinaryExpression que representa una operación de desplazamiento a la derecha bit a bit.
public:
static System::Linq::Expressions::BinaryExpression ^ RightShift(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right);
public static System.Linq.Expressions.BinaryExpression RightShift (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right);
static member RightShift : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function RightShift (left As Expression, right As Expression) As BinaryExpression
Parámetros
- left
- Expression
Objeto Expression en el que se va a establecer la propiedad Left.
- right
- Expression
Objeto Expression en el que se va a establecer la propiedad Right.
Devoluciones
BinaryExpression cuya propiedad NodeType es RightShift y cuyas propiedades Left y Right se establecen en los valores especificados.
Excepciones
left o right es null.
No hay ningún operador de desplazamiento a la derecha definido para left.Type y right.Type.
Comentarios
El resultado BinaryExpression tiene la Method propiedad establecida en el método de implementación. La Type propiedad se establece en el tipo del nodo. Si se levanta el nodo, las IsLifted propiedades y IsLiftedToNull son true. De lo contrario, son false. La propiedad Conversion es null.
En la siguiente información se describe el método de implementación, el tipo de nodo y si se levanta un nodo.
Método de implementación
Las reglas siguientes determinan el método de implementación seleccionado para la operación:
Si la Type propiedad de o
leftrightrepresenta un tipo definido por el usuario que sobrecarga el operador de desplazamiento derecho, que MethodInfo representa ese método es el método de implementación.De lo contrario, si
leftes . El tipo es un tipo entero (uno de Byte, , UInt16UInt32Int32Int16SByte, Int64UInt64o los tipos que aceptan valores NULL correspondientes) y .rightEl tipo es Int32, el método de implementación esnull.
Tipo de nodo y elevación frente a no elevado
Si el método de implementación no nulles :
Si
leftes . Escriba yright. El tipo se puede asignar a los tipos de argumento correspondientes del método de implementación, el nodo no se levanta. El tipo del nodo es el tipo de valor devuelto del método de implementación.Si se cumplen las dos condiciones siguientes, se levanta el nodo y el tipo del nodo es el tipo que acepta valores NULL que corresponde al tipo de valor devuelto del método de implementación:
left. Escriba yright. El tipo son tipos de valor de los que al menos uno acepta valores NULL y los tipos no que aceptan valores NULL correspondientes son iguales a los tipos de argumento correspondientes del método de implementación.El tipo de valor devuelto del método de implementación es un tipo de valor que no acepta valores NULL.
Si el método de implementación es null:
Si
leftes . Escriba yright. El tipo no acepta valores NULL, el nodo no se levanta. El tipo del nodo es el tipo de resultado del operador predefinido de desplazamiento a la derecha.Si
leftes . Escriba yright. El tipo admite valores NULL y se levanta el nodo. El tipo del nodo es el tipo que acepta valores NULL que corresponde al tipo de resultado del operador predefinido de desplazamiento a la derecha.
Se aplica a
RightShift(Expression, Expression, MethodInfo)
- Source:
- BinaryExpression.cs
- Source:
- BinaryExpression.cs
- Source:
- BinaryExpression.cs
Crea un objeto BinaryExpression que representa una operación de desplazamiento a la derecha bit a bit.
public:
static System::Linq::Expressions::BinaryExpression ^ RightShift(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression RightShift (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.BinaryExpression RightShift (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo? method);
static member RightShift : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function RightShift (left As Expression, right As Expression, method As MethodInfo) As BinaryExpression
Parámetros
- left
- Expression
Objeto Expression en el que se va a establecer la propiedad Left.
- right
- Expression
Objeto Expression en el que se va a establecer la propiedad Right.
- method
- MethodInfo
MethodInfo en el que se va a establecer la propiedad Method.
Devoluciones
BinaryExpression cuya propiedad NodeType es RightShift y Left, Right y Method se establecen en los valores especificados.
Excepciones
left o right es null.
method no es null y el método que representa devuelve void, no es static (Shared en Visual Basic) o no toma exactamente dos argumentos.
method es null y no hay ningún operador de desplazamiento a la derecha definido para left.Type y right.Type.
Comentarios
El resultado BinaryExpression tiene la Method propiedad establecida en el método de implementación. La Type propiedad se establece en el tipo del nodo. Si se levanta el nodo, las IsLifted propiedades y IsLiftedToNull son true. De lo contrario, son false. La propiedad Conversion es null.
En la siguiente información se describe el método de implementación, el tipo de nodo y si se levanta un nodo.
Método de implementación
Las reglas siguientes determinan el método de implementación seleccionado para la operación:
Si
methodnonulles y representa un método no void(staticShareden Visual Basic) que toma dos argumentos, es el método de implementación para el nodo.De lo contrario, si la Type propiedad de
leftorightrepresenta un tipo definido por el usuario que sobrecarga el operador de desplazamiento derecho, que MethodInfo representa ese método es el método de implementación.De lo contrario, si
leftes . El tipo es un tipo entero (uno de Byte, , UInt16UInt32Int32Int16SByte, Int64UInt64o los tipos que aceptan valores NULL correspondientes) y .rightEl tipo es Int32, el método de implementación esnull.
Tipo de nodo y elevación frente a no elevado
Si el método de implementación no nulles :
Si
leftes . Escriba yright. El tipo se puede asignar a los tipos de argumento correspondientes del método de implementación, el nodo no se levanta. El tipo del nodo es el tipo de valor devuelto del método de implementación.Si se cumplen las dos condiciones siguientes, se levanta el nodo y el tipo del nodo es el tipo que acepta valores NULL que corresponde al tipo de valor devuelto del método de implementación:
left. Escriba yright. El tipo son tipos de valor de los que al menos uno acepta valores NULL y los tipos no que aceptan valores NULL correspondientes son iguales a los tipos de argumento correspondientes del método de implementación.El tipo de valor devuelto del método de implementación es un tipo de valor que no acepta valores NULL.
Si el método de implementación es null:
Si
leftes . Escriba yright. El tipo no acepta valores NULL, el nodo no se levanta. El tipo del nodo es el tipo de resultado del operador predefinido de desplazamiento a la derecha.Si
leftes . Escriba yright. El tipo admite valores NULL y se levanta el nodo. El tipo del nodo es el tipo que acepta valores NULL que corresponde al tipo de resultado del operador predefinido de desplazamiento a la derecha.