PHPackages                             quizlet/fb\_intercept\_polyfill - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. quizlet/fb\_intercept\_polyfill

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

quizlet/fb\_intercept\_polyfill
===============================

A polyfill for using fb\_intercept across hhvm 3.24 -&gt; 4.present

v2.0.1(4y ago)03.4k11Hack

Since Jan 26Pushed 2y ago22 watchersCompare

[ Source](https://github.com/quizlet/fb_intercept_polyfill)[ Packagist](https://packagist.org/packages/quizlet/fb_intercept_polyfill)[ RSS](/packages/quizlet-fb-intercept-polyfill/feed)WikiDiscussions master Synced today

READMEChangelog (5)Dependencies (5)Versions (12)Used By (1)

fb\_intercept\_polyfill
=======================

[](#fb_intercept_polyfill)

A polyfill for using fb\_intercept across hhvm 3.24 -&gt; 4.present

Why *you* don't need this polyfill. The polyfill bridges the gap between a hhvm that understands `inout` without being in the transition period for `&$references` and one that doesn't understand `&$references`. The `HH\Lib\Ref` is a class does not require runtime support, so it can be used as a mediator. If your hhvm is not in the transition period for `&$references`, but it does have `HH\Lib\Ref` support, you may want to use this polyfill.

### Limitations

[](#limitations)

`fb_intercept()` is a built-in function. This gives it the superpower that it can't be intercepted itself. The polyfill is userland code, so it can be intercepted. Therefore you can't use the catchall interceptor key `''` (empty string), since you would be intercepting calls to the polyfill itself. This makes it impossible to call `fb_intercept()` after that. The polyfill will throw if you pass it the catchall key, telling you that this is not supported. If you intercept the polyfill by name intentionally, you'll not be able to restore it. So don't do that. 😉

### Installation instructions for library authors

[](#installation-instructions-for-library-authors)

Version v1.x.x and v2.x.x will retain API intercompatibility as a promise. v1 will only run on hhvm 4.28 and below and v2 will only run on 4.20 and up. The public API has not changed, only the hhvm version requirement and some implementation details.

We therefore **STRONGLY** advice that your version constraint for this library is `"^1|^2"`. This is required to be installable on all hhvm versions.

Users of this library who do not intend to run on older hhvm versions can set a `"^2"` constraint, but the `"^1|^2"` constraint would also work for you.

###  Health Score

32

—

LowBetter than 71% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity17

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 77.6% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~84 days

Recently: every ~147 days

Total

8

Last Release

1654d ago

Major Versions

v1.0.2 → v2.0.02020-03-19

### Community

Maintainers

![](https://www.gravatar.com/avatar/dfa1efd09273e967d93bc7916b90b6daaf2cd3aebcb5efda4ced4fd05299b5c5?d=identicon)[tyronjung](/maintainers/tyronjung)

---

Top Contributors

[![lexidor](https://avatars.githubusercontent.com/u/31805625?v=4)](https://github.com/lexidor "lexidor (38 commits)")[![tyronjung-quizlet](https://avatars.githubusercontent.com/u/41349925?v=4)](https://github.com/tyronjung-quizlet "tyronjung-quizlet (11 commits)")

### Embed Badge

![Health badge](/badges/quizlet-fb-intercept-polyfill/health.svg)

```
[![Health](https://phpackages.com/badges/quizlet-fb-intercept-polyfill/health.svg)](https://phpackages.com/packages/quizlet-fb-intercept-polyfill)
```

###  Alternatives

[hhvm/hsl

The Hack Standard Library

1151.1M55](/packages/hhvm-hsl)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
