code: private static Stream<IConditional> conditionals( IVarDef var)
      {
      return
        Stream.concat
        ( Stream.of( var),
          Stream.concat
          ( Optional.ofNullable( var.getMembers()).map( members -> toStream( members).flatMap( member -> conditionals( member))).orElse( Stream.empty()),
            Optional.ofNullable( var.getValues()).map( values -> toStream( values).map( value -> new VarBindingDef( (VarDef)var, value))).orElse( Stream.empty())));
      }
docs: Returns the IConditional instances defined by the given variable definition.