Class: Igniter::Contracts::Execution::CompilationReport

Inherits:
Object
  • Object
show all
Defined in:
lib/igniter/contracts/execution/compilation_report.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(operations:, validation_report:, compiled_graph:, profile_fingerprint:) ⇒ CompilationReport

Returns a new instance of CompilationReport.



9
10
11
12
13
14
15
# File 'lib/igniter/contracts/execution/compilation_report.rb', line 9

def initialize(operations:, validation_report:, compiled_graph:, profile_fingerprint:)
  @operations = operations.freeze
  @validation_report = validation_report
  @compiled_graph = compiled_graph
  @profile_fingerprint = profile_fingerprint
  freeze
end

Instance Attribute Details

#compiled_graphObject (readonly)

Returns the value of attribute compiled_graph.



7
8
9
# File 'lib/igniter/contracts/execution/compilation_report.rb', line 7

def compiled_graph
  @compiled_graph
end

#operationsObject (readonly)

Returns the value of attribute operations.



7
8
9
# File 'lib/igniter/contracts/execution/compilation_report.rb', line 7

def operations
  @operations
end

#profile_fingerprintObject (readonly)

Returns the value of attribute profile_fingerprint.



7
8
9
# File 'lib/igniter/contracts/execution/compilation_report.rb', line 7

def profile_fingerprint
  @profile_fingerprint
end

#validation_reportObject (readonly)

Returns the value of attribute validation_report.



7
8
9
# File 'lib/igniter/contracts/execution/compilation_report.rb', line 7

def validation_report
  @validation_report
end

Instance Method Details

#findingsObject



25
26
27
# File 'lib/igniter/contracts/execution/compilation_report.rb', line 25

def findings
  validation_report.findings
end

#invalid?Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/igniter/contracts/execution/compilation_report.rb', line 21

def invalid?
  validation_report.invalid?
end

#ok?Boolean

Returns:

  • (Boolean)


17
18
19
# File 'lib/igniter/contracts/execution/compilation_report.rb', line 17

def ok?
  validation_report.ok?
end

#to_compiled_graphObject



29
30
31
32
# File 'lib/igniter/contracts/execution/compilation_report.rb', line 29

def to_compiled_graph
  validation_report.raise_if_invalid!
  compiled_graph
end

#to_hObject



34
35
36
37
38
39
40
41
42
# File 'lib/igniter/contracts/execution/compilation_report.rb', line 34

def to_h
  {
    operations: StructuredDump.dump(operations),
    validation_report: validation_report.to_h,
    compiled_graph: StructuredDump.dump(compiled_graph),
    profile_fingerprint: profile_fingerprint,
    ok: ok?
  }
end