Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
a local clone.
dmd.ctorflow
Compiler implementation of the
D programming language.
Manage flow analysis for constructors.
Authors:
License:
Source ctorflow.d
Documentation https://dlang.org/phobos/dmd_ctorflow.html
- struct
FieldInit
; - Individual field in the Ctor with information about its callees and location.
- CSX
csx
; - information about the field's callees
- Loc
loc
; - location of the field initialization
- struct
CtorFlow
; - Primitive flow analysis for constructors
- CSX
callSuper
; - state of calling other constructors
- FieldInit[]
fieldinit
; - state of field initializations
- CtorFlow
clone
(); - Create a deep copy of thisReturns:a copy
- pure nothrow void
orCSX
(CSXcsx
); - Set CSX bits in flow analysis stateParameters:
CSX csx
bits to set - pure nothrow void
OR
(ref const CtorFlowctorflow
); - OR CSX bits to thisParameters:
CtorFlow ctorflow
bits to OR in
- pure nothrow bool
mergeCallSuper
(ref CSXa
, const CSXb
); - Merge
b
flow analysis results intoa
.Parameters:CSX a
the path to merge b
intoCSX b
the other path Returns:false means one of the paths skips construction - pure nothrow bool
mergeFieldInit
(ref CSXa
, const CSXb
); - Merge
b
flow analysis results intoa
.Parameters:CSX a
the path to merge b
intoCSX b
the other path Returns:false means eithera
orb
skips initialization
Copyright © 1999-2022 by the D Language Foundation | Page generated by
Ddoc on (no date time)