V8 Project
v8::internal::EffectsMixin< Var, Base, Effects >::AltWeakener< Self > Struct Template Reference

#include <effects.h>

+ Collaboration diagram for v8::internal::EffectsMixin< Var, Base, Effects >::AltWeakener< Self >:

Public Member Functions

void Call (Var var, Effect effect)
 

Public Attributes

Self self
 
Effects other
 

Detailed Description

template<class Var, class Base, class Effects>
template<class Self>
struct v8::internal::EffectsMixin< Var, Base, Effects >::AltWeakener< Self >

Definition at line 149 of file effects.h.

Member Function Documentation

◆ Call()

template<class Var , class Base , class Effects >
template<class Self >
void v8::internal::EffectsMixin< Var, Base, Effects >::AltWeakener< Self >::Call ( Var  var,
Effect  effect 
)
inline

Definition at line 150 of file effects.h.

150  {
151  if (effect.modality == Effect::DEFINITE && !other.Contains(var)) {
152  effect.modality = Effect::POSSIBLE;
153  Locator locator;
154  self.Insert(var, &locator);
155  locator.set_value(effect);
156  }
157  }
bool Contains(Var var)
Definition: effects.h:196
Base::Locator Locator
Definition: effects.h:134

References v8::internal::EffectsBase< Var, kNoVar >::Contains(), v8::internal::Effect::DEFINITE, v8::internal::Effect::modality, v8::internal::EffectsMixin< Var, Base, Effects >::AltWeakener< Self >::other, and v8::internal::Effect::POSSIBLE.

+ Here is the call graph for this function:

Member Data Documentation

◆ other

template<class Var , class Base , class Effects >
template<class Self >
Effects v8::internal::EffectsMixin< Var, Base, Effects >::AltWeakener< Self >::other

◆ self

template<class Var , class Base , class Effects >
template<class Self >
Self v8::internal::EffectsMixin< Var, Base, Effects >::AltWeakener< Self >::self

Definition at line 158 of file effects.h.


The documentation for this struct was generated from the following file: