class_docstr: Includes a local file as a parameter for the flow.
  
  `IncludeFile` behaves like `Parameter` except that it reads its value from a file instead of
  the command line. The user provides a path to a file on the command line. The file contents
  are saved as a read-only artifact which is available in all steps of the flow.
  
  Parameters
  ----------
  name : str
      User-visible parameter name.
  default : str or a function
      Default path to a local file. A function
      implies that the parameter corresponds to a *deploy-time parameter*.
  is_text : bool, default: True
      Convert the file contents to a string using the provided `encoding`.
      If False, the artifact is stored in `bytes`.
  encoding : str, optional, default: 'utf-8'
      Use this encoding to decode the file contexts if `is_text=True`.
  required : bool, default: False
      Require that the user specified a value for the parameter.
      `required=True` implies that the `default` is not used.
  help : str, optional
      Help text to show in `run --help`.
  show_default : bool, default: True
      If True, show the default value in the help text.
class_docstr_tok: ["Includes","a","local","file","as","a","parameter","for","the","flow",".","`","IncludeFile","`","behaves","like","`","Parameter","`","except","that","it","reads","its","value","from","a","file","instead","of","the","command","line",".","The","user","provides","a","path","to","a","file","on","the","command","line",".","The","file","contents","are","saved","as","a","read-only","artifact","which","is","available","in","all","steps","of","the","flow",".","Parameters","--","--","--","--","--","name",":","str","User-visible","parameter","name",".","default",":","str","or","a","function","Default","path","to","a","local","file",".","A","function","implies","that","the","parameter","corresponds","to","a","*","deploy-time","parameter","*",".","is_text",":","bool",",","default",":","True","Convert","the","file","contents","to","a","string","using","the","provided","`","encoding","`",".","If","False",",","the","artifact","is","stored","in","`","bytes","`",".","encoding",":","str",",","optional",",","default",":","'utf-8'","Use","this","encoding","to","decode","the","file","contexts","if","`","is_text=True","`",".","required",":","bool",",","default",":","False","Require","that","the","user","specified","a","value","for","the","parameter",".","`","required=True","`","implies","that","the","`","default","`","is","not","used",".","help",":","str",",","optional","Help","text","to","show","in","`","run","--","help","`",".","show_default",":","bool",",","default",":","True","If","True",",","show","the","default","value","in","the","help","text","."]
code: def _eval_default(is_text, encoding, default_path):
      # NOTE: If changing name of this function, check comments that refer to it to
      # update it.
      def do_eval(ctx, deploy_time):
          if isinstance(default_path, DeployTimeField):
              d = default_path(deploy_time=deploy_time)
          else:
              d = default_path
          if deploy_time:
              fp = FilePathClass(is_text, encoding)
              val = fp.convert(d, None, ctx)
              if isinstance(val, DelayedEvaluationParameter):
                  val = val()
              # At this point this is an IncludedFile, but we need to make it
              # into a string so that it can be properly saved.
              return json.dumps(val.descriptor)
          else:
              return d
  
      return do_eval
  
imports: from collections import namedtuple
  import gzip
  import io
  import json
  import os
  from hashlib import sha1
  from typing import Any, Dict, Optional
  from metaflow._vendor import click
  from .exception import MetaflowException
  from .parameters import DelayedEvaluationParameter, DeployTimeField, Parameter, ParameterContext
  from .util import get_username
  import functools
  from metaflow.plugins.datatools import Local, S3
  from metaflow.plugins.azure.includefile_support import Azure
  from metaflow.plugins.gcp.includefile_support import GS
label_desc: Use image node_id 3 for calling the IncludeFile obj's underlying member method code with example usage: obj._eval_default(is_text, encoding, default_path) and returns: do_eval, json, d