1. A non-transitory computer readable medium comprising instructions which, when executed by one or more hardware processors, causes performance of operations comprising: identifying a set of methods comprising a nested method and an outer method, wherein the nested method is nested inside the outer method, the nested method is associated with a nested method invocation context, and the outer method is associated with an outer method invocation context; identifying a set of bounds for each of a plurality of inference variables associated with the nested method invocation context; based on the set of bounds for each of the plurality of inference variables, determining that a first inference variable, of the plurality of inference variables, is resolvable based on a resolution of a second inference variable of the plurality of inference variables; responsive at least to determining that the first inference variable is resolvable based on the resolution of the second inference variable: propagating the bounds for the second inference variable from the nested method invocation context to the outer method invocation context without propagating the bounds for the first inference variable from the nested method invocation context to the outer method invocation context; determining a set of constraints associated with the outer method invocation context, the set of constraints (a) including the bounds for the second inference variable associated with the nested method invocation context, and (b) not including the bounds for the first inference variable associated with the nested method invocation context; determining a resolution for the second inference variable based on the set of constraints associated with the outer method invocation context; and determining a resolution for the first inference variable based on the resolution for the second inference variable; wherein the resolution for the first inference variable and the resolution for the second inference variable are usable for generating a representation of the set of methods that is executable in a machine environment.
1. A non-transitory computer readable medium comprising instructions which, when executed by one or more hardware processors, causes performance of operations comprising: identifying a set of methods comprising a nested method and an outer method, wherein the nested method is nested inside the outer method, the nested method is associated with a nested method invocation context, and the outer method is associated with an outer method invocation context; identifying a set of bounds for each of a plurality of inference variables associated with the nested method invocation context; based on the set of bounds for each of the plurality of inference variables, determining that a first inference variable, of the plurality of inference variables, is resolvable based on a resolution of a second inference variable of the plurality of inference variables; responsive at least to determining that the first inference variable is resolvable based on the resolution of the second inference variable: propagating the bounds for the second inference variable from the nested method invocation context to the outer method invocation context without propagating the bounds for the first inference variable from the nested method invocation context to the outer method invocation context; determining a set of constraints associated with the outer method invocation context, the set of constraints (a) including the bounds for the second inference variable associated with the nested method invocation context, and (b) not including the bounds for the first inference variable associated with the nested method invocation context; determining a resolution for the second inference variable based on the set of constraints associated with the outer method invocation context; and determining a resolution for the first inference variable based on the resolution for the second inference variable; wherein the resolution for the first inference variable and the resolution for the second inference variable are usable for generating a representation of the set of methods that is executable in a machine environment. 4. The medium of claim 1 , wherein the propagating operation is further responsive to (a) determining that the first inference variable is not associated with a type of an object returned by the nested method corresponding to the nested method invocation context and (b) determining that the second inference variable is associated with the type of the object returned by the nested method.