fab.parse.x90 module#

class fab.parse.x90.AnalysedX90(fpath, file_hash, kernel_deps=None)#

Bases: AnalysedFile

Analysis results for an x90 file.

Parameters:
  • fpath (Union[str, Path]) – The path of the x90 file.

  • file_hash (int) – The checksum of the x90 file.

  • kernel_deps (Optional[Iterable[str]]) – Kernel symbols used by the x90 file. (default: None)

to_dict()#

Create a dict representing the object.

The dict may be written to json, so can’t contain sets. Lists are sorted for reproducibility in testing.

Return type:

Dict[str, Any]

classmethod from_dict(d)#
classmethod field_names()#

Defines the order in which we want fields to appear in str or repr strings.

Calling this helps to ensure any lazy attributes are evaluated before use, e.g when constructing a string representation of the instance, or generating a hash value.

class fab.parse.x90.X90Analyser#

Bases: FortranAnalyserBase

Parameters:
  • result_class – The type (class) of the analysis result. Defined by the subclass.

  • std – The Fortran standard.

walk_nodes(fpath, file_hash, node_tree)#

Examine the nodes in the parse tree, recording things we’re interested in.

Return type depends on our subclass, and will be a subclass of AnalysedDependent.

Return type:

AnalysedX90