Hack
HHVM
report a problem or make a suggestion
Search our Documentation
Getting Started
Getting Started
Tools
Starting A Real Project
The Standard Library
Input And Output
Source Code Fundamentals
Introduction
Program Structure
Comments
Names
Keywords
Literals
Scope
Constants
Variables
Script Inclusion
Namespaces
Expressions And Operators
Introduction
Operator Precedence
Echo
Exit
Banning Lval As An Expression
Invariant
List
Async Blocks
New
Subscript
Member Selection
Scope Resolution
Incrementing And Decrementing
Error Control
Casting
Await
Type Assertions
Arithmetic
String Concatenation
Bitwise Operators
Logical Operators
Comparisons
Equality
Ternary
Coalesce
Pipe
Assignment
Yield
Statements
Introduction
If
Switch
While
Do
For
Foreach
Break And Continue
Return
Using
Try
Use
Functions
Introduction
Anonymous Functions
Type Enforcement
Format Strings
Inout Parameters
Function References
Classes
Introduction
Methods
Properties
Inheritance
Constructors
Constants
Type Constants
Object Disposal
Implementing An Interface
Using A Trait
Trait And Interface Requirements
Type Constants Revisited
Methods With Predefined Semantics
Arrays And Collections
Introduction
Hack Arrays
Collections
Php Arrays
Mutating Values
Types
Introduction
Soft Types
Generic Types
Nullable Types
Type Conversion
Type Aliases
Supertypes And Subtypes
Type Refinement
Type Inferencing
Built In Types
Introduction
Bool
Int
Float
Num
String
Void
Tuples
Shapes
Arraykey
Enumerated Types
Enum Class
This
Classname
Darray Varray Runtime Options
Resources
Null
Nonnull
Mixed
Dynamic
Noreturn
Nothing
Generics
Introduction
Some Basics
Type Parameters
Type Constraints
Variance
Type Erasure
Reified Generics
Reified Generics Migration
Contexts And Capabilities
Introduction
Local Operations
Closures
Higher Order Functions
Contexts And Subtyping
Context Constants
Dependent Contexts Continued
Available Contexts And Capabilities
Asynchronous Operations
Introduction
Awaitables
Exceptions
Blocks
Concurrent
Await As An Expression
Utility Functions
Extensions
Generators
Async Vs. Awaitable
Guidelines
Examples
Further Resources
Await As An Expression Spec
Attributes
Introduction
Predefined Attributes
XHP
Introduction
Setup
Basic Usage
Interfaces
Methods
Extending
Migration
Guidelines
Further Resources
Silencing Errors
Introduction
Error Codes
Documentation
hack
Learn
Source Code Fundamentals
Introduction
Source Code Fundamentals: Introduction
Topics covered in this section
comments
constants
keywords
literals
names, user-defined
namespaces
scope
script inclusion
variables
Input And Output
Getting Started:
Program Structure
Source Code Fundamentals: