Skip to content

Commit

Permalink
Revert the Multivector constraint
Browse files Browse the repository at this point in the history
  • Loading branch information
eggrobin committed Apr 2, 2024
1 parent d4a7062 commit f16bb53
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 12 deletions.
9 changes: 3 additions & 6 deletions geometry/grassmann.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,7 @@ class Multivector<Scalar, Frame, 1> final {
Multivector<S, Frame, 1> const& multivector) const;

void WriteToMessage(
not_null<serialization::Multivector*> message) const
requires serializable<Frame>;
not_null<serialization::Multivector*> message) const;
static Multivector ReadFromMessage(serialization::Multivector const& message)
requires serializable<Frame>;

Expand Down Expand Up @@ -97,8 +96,7 @@ class Multivector<Scalar, Frame, 2> final {
Multivector OrthogonalizationAgainst(
Multivector<S, Frame, 2> const& multivector) const;

void WriteToMessage(not_null<serialization::Multivector*> message) const
requires serializable<Frame>;
void WriteToMessage(not_null<serialization::Multivector*> message) const;
static Multivector ReadFromMessage(serialization::Multivector const& message)
requires serializable<Frame>;

Expand Down Expand Up @@ -131,8 +129,7 @@ class Multivector<Scalar, Frame, 3> final {
Scalar Norm() const;
Square<Scalar> Norm²() const;

void WriteToMessage(not_null<serialization::Multivector*> message) const
requires serializable<Frame>;
void WriteToMessage(not_null<serialization::Multivector*> message) const;
static Multivector ReadFromMessage(serialization::Multivector const& message)
requires serializable<Frame>;

Expand Down
9 changes: 3 additions & 6 deletions geometry/grassmann_body.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -179,24 +179,21 @@ Multivector<Scalar, Frame, 2>::OrthogonalizationAgainst(

template<quantity Scalar, typename Frame>
void Multivector<Scalar, Frame, 1>::WriteToMessage(
not_null<serialization::Multivector*> const message) const
requires serializable<Frame> {
not_null<serialization::Multivector*> const message) const {
Frame::WriteToMessage(message->mutable_frame());
coordinates_.WriteToMessage(message->mutable_vector());
}

template<quantity Scalar, typename Frame>
void Multivector<Scalar, Frame, 2>::WriteToMessage(
not_null<serialization::Multivector*> const message) const
requires serializable<Frame> {
not_null<serialization::Multivector*> const message) const {
Frame::WriteToMessage(message->mutable_frame());
coordinates_.WriteToMessage(message->mutable_bivector());
}

template<quantity Scalar, typename Frame>
void Multivector<Scalar, Frame, 3>::WriteToMessage(
not_null<serialization::Multivector*> const message) const
requires serializable<Frame> {
not_null<serialization::Multivector*> const message) const {
Frame::WriteToMessage(message->mutable_frame());
coordinates_.WriteToMessage(message->mutable_trivector());
}
Expand Down

0 comments on commit f16bb53

Please sign in to comment.