Class ValueNullability
An analysis result that tells if values produce non-null
or dereferenceable pointers.
Inheritance
Inherited Members
Namespace: Flame.Compiler.Analysis
Assembly: Flame.Compiler.dll
Syntax
public abstract class ValueNullability
Methods
| Improve this Doc View SourceIsDereferenceable(ValueTag)
Tells if a particular value always produces a pointer that can be dereferenced.
Declaration
public bool IsDereferenceable(ValueTag value)
Parameters
Type | Name | Description |
---|---|---|
ValueTag | value | A pointer value to test for dereferenceability. |
Returns
Type | Description |
---|---|
System.Boolean |
|
IsDereferenceableOrNull(Instruction)
Tells if a particular instruction always produces a
pointer that is either dereferenceable or null
.
Declaration
public virtual bool IsDereferenceableOrNull(Instruction instruction)
Parameters
Type | Name | Description |
---|---|---|
Instruction | instruction | An instruction to test for dereferenceability. |
Returns
Type | Description |
---|---|
System.Boolean |
|
IsDereferenceableOrNull(ValueTag)
Tells if a particular value always produces a pointer that is
either dereferenceable or null
.
Declaration
public abstract bool IsDereferenceableOrNull(ValueTag value)
Parameters
Type | Name | Description |
---|---|---|
ValueTag | value | A pointer value to test for dereferenceability. |
Returns
Type | Description |
---|---|
System.Boolean |
|
IsDereferenceableOrNull(IType)
Tests if a type is always either dereferenceable or null
.
Declaration
public virtual bool IsDereferenceableOrNull(IType type)
Parameters
Type | Name | Description |
---|---|---|
IType | type | The type to test for dereferenceability. |
Returns
Type | Description |
---|---|
System.Boolean |
|
IsNonNull(Instruction)
Tells if a particular instruction always produces a non-null
pointer.
Declaration
public virtual bool IsNonNull(Instruction instruction)
Parameters
Type | Name | Description |
---|---|---|
Instruction | instruction | An instruction to test for nullability. |
Returns
Type | Description |
---|---|
System.Boolean |
|
IsNonNull(ValueTag)
Tells if a particular value always produces a non-null
pointer.
Declaration
public abstract bool IsNonNull(ValueTag value)
Parameters
Type | Name | Description |
---|---|---|
ValueTag | value | A pointer value to test for nullability. |
Returns
Type | Description |
---|---|
System.Boolean |
|
IsNonNull(IType)
Tests if a type is never nullable.
Declaration
public virtual bool IsNonNull(IType type)
Parameters
Type | Name | Description |
---|---|---|
IType | type | The type to test for non-nullability. |
Returns
Type | Description |
---|---|
System.Boolean |
|