[#absl-operator_rshift-05]
= xref:absl.adoc[absl]::operator&gt;&gt;
:relfileprefix: ../
:mrdocs:

Right shift operators

== Synopses

Declared in `&lt;absl&sol;numeric&sol;int128&period;h&gt;`

Shifts `lhs` right by the given number of bits&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
constexpr
xref:absl/int128.adoc[int128]
xref:absl/operator_rshift-02d.adoc[operator&gt;&gt;](
    xref:absl/int128.adoc[int128] lhs,
    int amount);
----

[.small]#xref:absl/operator_rshift-02d.adoc[_» more&period;&period;&period;_]#

Shifts `lhs` right by the given number of bits&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
constexpr
xref:absl/uint128.adoc[uint128]
xref:absl/operator_rshift-040.adoc[operator&gt;&gt;](
    xref:absl/uint128.adoc[uint128] lhs,
    int amount);
----

[.small]#xref:absl/operator_rshift-040.adoc[_» more&period;&period;&period;_]#

Reads the distribution from an input stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    typename CharT,
    typename Traits&gt;
std::basic&lowbar;istream&lt;CharT, Traits&gt;&
xref:absl/operator_rshift-0ba.adoc[operator&gt;&gt;](
    std::basic&lowbar;istream&lt;CharT, Traits&gt;& is,
    xref:absl/bernoulli_distribution.adoc[bernoulli&lowbar;distribution]& x);
----

[.small]#xref:absl/operator_rshift-0ba.adoc[_» more&period;&period;&period;_]#

Reads the distribution from an input stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    typename CharT,
    typename Traits,
    typename RealType&gt;
std::basic&lowbar;istream&lt;CharT, Traits&gt;&
xref:absl/operator_rshift-00.adoc[operator&gt;&gt;](
    std::basic&lowbar;istream&lt;CharT, Traits&gt;& is,
    xref:absl/beta_distribution.adoc[beta&lowbar;distribution&lt;RealType&gt;]& x);
----

[.small]#xref:absl/operator_rshift-00.adoc[_» more&period;&period;&period;_]#

Reads the distribution from an input stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    typename CharT,
    typename Traits,
    typename IntType&gt;
std::basic&lowbar;istream&lt;CharT, Traits&gt;&
xref:absl/operator_rshift-02f.adoc[operator&gt;&gt;](
    std::basic&lowbar;istream&lt;CharT, Traits&gt;& is,
    xref:absl/discrete_distribution.adoc[discrete&lowbar;distribution&lt;IntType&gt;]& x);
----

[.small]#xref:absl/operator_rshift-02f.adoc[_» more&period;&period;&period;_]#

Reads the distribution from an input stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    typename CharT,
    typename Traits,
    typename RealType&gt;
std::basic&lowbar;istream&lt;CharT, Traits&gt;&
xref:absl/operator_rshift-0b4.adoc[operator&gt;&gt;](
    std::basic&lowbar;istream&lt;CharT, Traits&gt;& is,
    xref:absl/exponential_distribution.adoc[exponential&lowbar;distribution&lt;RealType&gt;]& x);
----

[.small]#xref:absl/operator_rshift-0b4.adoc[_» more&period;&period;&period;_]#

Reads the distribution from an input stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    typename CharT,
    typename Traits,
    typename RealType&gt;
std::basic&lowbar;istream&lt;CharT, Traits&gt;&
xref:absl/operator_rshift-06.adoc[operator&gt;&gt;](
    std::basic&lowbar;istream&lt;CharT, Traits&gt;& is,
    xref:absl/gaussian_distribution.adoc[gaussian&lowbar;distribution&lt;RealType&gt;]& x);
----

[.small]#xref:absl/operator_rshift-06.adoc[_» more&period;&period;&period;_]#

Reads the distribution from an input stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    typename CharT,
    typename Traits,
    typename IntType&gt;
std::basic&lowbar;istream&lt;CharT, Traits&gt;&
xref:absl/operator_rshift-0f.adoc[operator&gt;&gt;](
    std::basic&lowbar;istream&lt;CharT, Traits&gt;& is,
    xref:absl/log_uniform_int_distribution.adoc[log&lowbar;uniform&lowbar;int&lowbar;distribution&lt;IntType&gt;]& x);
----

[.small]#xref:absl/operator_rshift-0f.adoc[_» more&period;&period;&period;_]#

Reads the distribution from an input stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    typename CharT,
    typename Traits,
    typename IntType&gt;
std::basic&lowbar;istream&lt;CharT, Traits&gt;&
xref:absl/operator_rshift-048.adoc[operator&gt;&gt;](
    std::basic&lowbar;istream&lt;CharT, Traits&gt;& is,
    xref:absl/poisson_distribution.adoc[poisson&lowbar;distribution&lt;IntType&gt;]& x);
----

[.small]#xref:absl/operator_rshift-048.adoc[_» more&period;&period;&period;_]#

Reads the distribution from an input stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    typename CharT,
    typename Traits,
    typename IntType&gt;
std::basic&lowbar;istream&lt;CharT, Traits&gt;&
xref:absl/operator_rshift-0a.adoc[operator&gt;&gt;](
    std::basic&lowbar;istream&lt;CharT, Traits&gt;& is,
    xref:absl/uniform_int_distribution.adoc[uniform&lowbar;int&lowbar;distribution&lt;IntType&gt;]& x);
----

[.small]#xref:absl/operator_rshift-0a.adoc[_» more&period;&period;&period;_]#

Reads the distribution from an input stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    typename CharT,
    typename Traits,
    typename RealType&gt;
std::basic&lowbar;istream&lt;CharT, Traits&gt;&
xref:absl/operator_rshift-049.adoc[operator&gt;&gt;](
    std::basic&lowbar;istream&lt;CharT, Traits&gt;& is,
    xref:absl/uniform_real_distribution.adoc[uniform&lowbar;real&lowbar;distribution&lt;RealType&gt;]& x);
----

[.small]#xref:absl/operator_rshift-049.adoc[_» more&period;&period;&period;_]#

Reads the distribution from an input stream&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    typename CharT,
    typename Traits,
    typename IntType&gt;
std::basic&lowbar;istream&lt;CharT, Traits&gt;&
xref:absl/operator_rshift-01.adoc[operator&gt;&gt;](
    std::basic&lowbar;istream&lt;CharT, Traits&gt;& is,
    xref:absl/zipf_distribution.adoc[zipf&lowbar;distribution&lt;IntType&gt;]& x);
----

[.small]#xref:absl/operator_rshift-01.adoc[_» more&period;&period;&period;_]#

== Return Value

* The shifted value&period;
* A reference to the input stream&period;

== Parameters

[cols="1,4"]
|===
| Name| Description
| *lhs*
| The value to shift&period;
| *amount*
| The number of bit positions to shift&period;
| *is*
| The input stream to read from&period;
| *x*
| The distribution to read into&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
