133: def evaluate_classes(classes, scope, lazy_evaluate = true)
134: unless scope.source
135: raise Puppet::DevError, "No source for scope passed to evaluate_classes"
136: end
137: found = []
138: classes.each do |name|
139:
140: if klass = scope.find_hostclass(name)
141: found << name and next if class_scope(klass)
142:
143: resource = klass.evaluate(scope)
144:
145:
146:
147: resource.evaluate unless lazy_evaluate
148: found << name
149: else
150: Puppet.info "Could not find class %s for %s" % [name, node.name]
151: @catalog.tag(name)
152: end
153: end
154: found
155: end