Udostępnij za pośrednictwem


Expression.LeftShift Metoda

Definicja

Tworzy element, który reprezentuje bitową operację BinaryExpression przesunięcia w lewo.

Przeciążenia

LeftShift(Expression, Expression)

Tworzy element, który reprezentuje bitową operację BinaryExpression przesunięcia w lewo.

LeftShift(Expression, Expression, MethodInfo)

Tworzy element, który reprezentuje bitową operację BinaryExpression przesunięcia w lewo.

LeftShift(Expression, Expression)

Źródło:
BinaryExpression.cs
Źródło:
BinaryExpression.cs
Źródło:
BinaryExpression.cs

Tworzy element, który reprezentuje bitową operację BinaryExpression przesunięcia w lewo.

public:
 static System::Linq::Expressions::BinaryExpression ^ LeftShift(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right);
public static System.Linq.Expressions.BinaryExpression LeftShift (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right);
static member LeftShift : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function LeftShift (left As Expression, right As Expression) As BinaryExpression

Parametry

left
Expression

Element , Expression aby ustawić właściwość równą Left .

right
Expression

Element , Expression aby ustawić właściwość równą Right .

Zwraca

WłaściwośćBinaryExpression, która ma właściwość równą LeftShiftNodeType właściwości i i RightLeft ustawioną na określone wartości.

Wyjątki

left lub right to null.

Operator przesunięcia po lewej stronie nie jest zdefiniowany dla leftelementu . Wpisz i right. Typu.

Uwagi

BinaryExpression Wynik ma właściwość ustawioną Method na metodę implementowania. Właściwość Type jest ustawiona na typ węzła. Jeśli węzeł zostanie zniesiony, IsLifted właściwości i IsLiftedToNull są oba true. W przeciwnym razie są to false. Właściwość Conversion to null.

Poniższe informacje opisują metodę implementowania, typ węzła i to, czy węzeł został zniesiony.

Metoda implementująca

Następujące reguły określają wybraną metodę implementowania dla operacji:

  • Type Jeśli właściwość lub leftright reprezentuje typ zdefiniowany przez użytkownika, który przeciąża operatora przesunięcia po lewej stronie, oznacza to, MethodInfo że metoda jest metodą implementowania.

  • W przeciwnym razie, jeśli left. Typ to typ całkowity (jeden z Byte, , SByteUInt32Int16Int32Int64UInt16lub UInt64odpowiadających im typów dopuszczanych wartości null) i .right Typem jest Int32, metoda implementowania to null.

Typ węzła oraz węzły podniesione i niepodniesione

Jeśli metoda implementowania nie nulljest :

  • Jeśli left. Wpisz i right. Typ można przypisać do odpowiednich typów argumentów metody implementowania, węzeł nie jest zniesiony. Typ węzła to zwracany typ metody implementowania.

  • Jeśli spełnione są następujące dwa warunki, węzeł zostanie zniesiony, a typ węzła to typ dopuszczający wartość null odpowiadający typowi zwracanej metody implementowania:

    • left. Wpisz i right. Typ to oba typy wartości, z których co najmniej jeden ma wartość null, a odpowiadające im typy niepuste są równe odpowiadającym typom argumentów metody implementowania.

    • Zwracany typ metody implementowania jest typem wartości bez wartości null.

Jeśli metoda implementowania to null:

  • Jeśli left. Wpisz i right. Typ jest niezwiązany z wartością null, węzeł nie jest zniesiony. Typ węzła jest typem wyniku wstępnie zdefiniowanego operatora przesunięcia w lewo.

  • Jeśli left. Wpisz i right. Typ jest możliwy zarówno do wartości null, jak i węzeł zostanie zniesiony. Typ węzła to typ dopuszczający wartość null odpowiadający typowi wyniku wstępnie zdefiniowanego operatora przesunięcia lewego.

Dotyczy

LeftShift(Expression, Expression, MethodInfo)

Źródło:
BinaryExpression.cs
Źródło:
BinaryExpression.cs
Źródło:
BinaryExpression.cs

Tworzy element, który reprezentuje bitową operację BinaryExpression przesunięcia w lewo.

public:
 static System::Linq::Expressions::BinaryExpression ^ LeftShift(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression LeftShift (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.BinaryExpression LeftShift (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo? method);
static member LeftShift : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function LeftShift (left As Expression, right As Expression, method As MethodInfo) As BinaryExpression

Parametry

left
Expression

Element , Expression aby ustawić właściwość równą Left .

right
Expression

Element , Expression aby ustawić właściwość równą Right .

method
MethodInfo

A MethodInfo , aby ustawić właściwość równą Method .

Zwraca

WłaściwośćBinaryExpression, która ma właściwość równą LeftShiftNodeType wartościom , i LeftRight, i Method ustawioną na określone wartości.

Wyjątki

left lub right to null.

method nie null jest i metoda, która reprezentuje zwraca voidwartość , nie static jest (Shared w Visual Basic) lub nie bierze dokładnie dwóch argumentów.

method jest null i operator shift po lewej stronie nie jest zdefiniowany dla leftelementu . Wpisz i right. Typu.

Uwagi

BinaryExpression Wynik ma właściwość ustawioną Method na metodę implementowania. Właściwość Type jest ustawiona na typ węzła. Jeśli węzeł zostanie zniesiony, IsLifted właściwości i IsLiftedToNull są oba true. W przeciwnym razie są to false. Właściwość Conversion to null.

Poniższe informacje opisują metodę implementowania, typ węzła i to, czy węzeł został zniesiony.

Metoda implementująca

Następujące reguły określają wybraną metodę implementowania dla operacji:

  • Jeśli method nie null jest i reprezentuje metodę niepustą ( w Visual Basic), która przyjmuje dwa argumenty, staticShared jest to metoda implementowania węzła.

  • W przeciwnym razie, jeśli Type właściwość lub leftright reprezentuje typ zdefiniowany przez użytkownika, który przeciąża operator przesunięcia po lewej stronie, oznacza to, MethodInfo że metoda jest metodą implementowania.

  • W przeciwnym razie, jeśli left. Typ to typ całkowity (jeden z Byte, , SByteUInt32Int16Int32Int64UInt16lub UInt64odpowiadających im typów dopuszczanych wartości null) i .right Typem jest Int32, metoda implementowania to null.

Typ węzła oraz węzły podniesione i niepodniesione

Jeśli metoda implementowania nie nulljest :

  • Jeśli left. Wpisz i right. Typ można przypisać do odpowiednich typów argumentów metody implementowania, węzeł nie jest zniesiony. Typ węzła to zwracany typ metody implementowania.

  • Jeśli spełnione są następujące dwa warunki, węzeł zostanie zniesiony, a typ węzła to typ dopuszczający wartość null odpowiadający typowi zwracanej metody implementowania:

    • left. Wpisz i right. Typ to oba typy wartości, z których co najmniej jeden ma wartość null, a odpowiadające im typy niepuste są równe odpowiadającym typom argumentów metody implementowania.

    • Zwracany typ metody implementowania jest typem wartości bez wartości null.

Jeśli metoda implementowania to null:

  • Jeśli left. Wpisz i right. Typ jest niezwiązany z wartością null, węzeł nie jest zniesiony. Typ węzła jest typem wyniku wstępnie zdefiniowanego operatora przesunięcia w lewo.

  • Jeśli left. Wpisz i right. Typ jest możliwy zarówno do wartości null, jak i węzeł zostanie zniesiony. Typ węzła to typ dopuszczający wartość null odpowiadający typowi wyniku wstępnie zdefiniowanego operatora przesunięcia lewego.

Dotyczy