FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
hack-codegen/src/CodegenConstantish.hack at main · hhvm/hack-codegen · GitHub
This repository was archived by the owner on Aug 25, 2025. It is now read-only.
hhvm
/
hack-codegen
Public archive
Notifications
You must be signed in to change notification settings
Fork
92
Star
348
Code
Issues
5
Pull requests
2
Actions
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Actions
Security and quality
Insights
Expand file tree
Breadcrumbs
hack-codegen
/
src
/
CodegenConstantish.hack
Copy path
More file actions
More file actions
Latest commit
History
History
History
62 lines (54 loc) · 1.4 KB
Breadcrumbs
hack-codegen
/
src
/
CodegenConstantish.hack
Copy path
File metadata and controls
62 lines (54 loc) · 1.4 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
/*
* Copyright (c) 2015-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
*/
namespace
Facebook\HackCodegen
;
/**
* Generate code for a constant that is not part of a class.
*
*
@see
IHackCodegenFactory::codegenConstant
*/
abstract
class
CodegenConstantish
implements
ICodeBuilderRenderer
{
private
?
string
$comment
;
private
?
string
$value
=
null
;
/*
* @selfdocumenting
*/
public
function
__construct
(
protected
IHackCodegenConfig
$config
,
private
string
$name
,
) {
}
/*
* @selfdocumenting
*/
public
function
getName
():
string
{
return
$this
->
name
;
}
/*
* Returns the value as code
*/
public
function
getValue
(): ?
string
{
return
$this
->
value
;
}
/*
* @selfDocumenting
*/
public
function
getDocBlock
(): ?
string
{
return
$this
->
comment
;
}
/*
* @selfdocumenting
*/
public
function
setDocBlock
(
string
$comment
):
this
{
$this
->
comment
=
$comment
;
return
$this
;
}
/**
* Set the value of the constant using a renderer.
*
*
@param
$renderer a renderer for the value. In general, this should be
* created using `HackBuilderValues`
*/
public
function
setValue
<
T
>(
T
$value
,
IHackBuilderValueRenderer
<
T
>
$renderer
,
):
this
{
$this
->
value
=
$renderer
->
render(
$this
->
config
,
$value
);
return
$this
;
}
}
Back
|
FazBrowse Home
|
New Git URL