def call_with_continuation_prompt(args, env, cont): if not args: raise SchemeException( "call-with-continuation-prompt: not given enough values") parser = ArgParser("call-with-continuation-prompt", args) tag = values.w_default_continuation_prompt_tag handler = values.w_false fun = parser.expect(values.W_Object) try: tag = parser.expect(values.W_ContinuationPromptTag) handler = parser.expect(values.W_Object) except EndOfInput: pass args = parser.expect_many(values.W_Object) if not fun.iscallable(): raise SchemeException( "call-with-continuation-prompt: not given callable function") if handler is not values.w_false and not handler.iscallable(): raise SchemeException( "call-with-continuation-prompt: not given callable handler") if handler is values.w_false: handler = None cont = Prompt(tag, handler, env, cont) return fun.call(args, env, cont)
def make_logger(args): parser = ArgParser("make-logger", args) topic = values.w_false parent = values.w_false propagate_level = DEBUG try: topic = parser.expect(values.W_Symbol, values.w_false) parent = parser.expect(values.W_Logger, values.w_false) propagate_level = parser.expect(*LOG_LEVEL) except EndOfInput: pass # Any remaining arguments are propagate topics propagate_topic = parser.expect_many(values.W_Symbol, values.w_false) return values.W_Logger(topic, parent, propagate_level, propagate_topic)
def make_logger(args): parser = ArgParser("make-logger", args) topic = values.w_false parent = values.w_false propagate_level = DEBUG try: topic = parser.expect(values.W_Symbol, values.w_false) parent = parser.expect(values.W_Logger, values.w_false) propagate_level = parser.expect(*LOG_LEVEL) except EndOfInput: pass # Any remaining arguments are propagate topics propagate_topic = parser.expect_many(values.W_Symbol, values.w_false) return values.W_Logger(topic, parent, propagate_level, propagate_topic)
def make_logger(args): parser = ArgParser("make-logger", args) topic = values.w_false parent = values.w_false propagate_level = DEBUG # propagate everything try: topic = parser.expect(values.W_Symbol, values.w_false) parent = parser.expect(values.W_Logger, values.w_false) propagate_level = parser.expect(*LOG_LEVEL) except EndOfInput: pass # Any remaining arguments are propagate topics propagate_topic = parser.expect_many(values.W_Symbol, values.w_false) init_syslog_level = w_main_logger.get_syslog_level() init_stderr_level = w_main_logger.get_stderr_level() init_stdout_level = w_main_logger.get_stdout_level() return values.W_Logger(topic, parent, propagate_level, propagate_topic, init_syslog_level, init_stderr_level, init_stdout_level)
def call_with_continuation_prompt(args, env, cont): if not args: raise SchemeException("call-with-continuation-prompt: not given enough values") parser = ArgParser("call-with-continuation-prompt", args) tag = values.w_default_continuation_prompt_tag handler = values.w_false fun = parser.expect(values.W_Object) try: tag = parser.expect(values.W_ContinuationPromptTag) handler = parser.expect(values.W_Object) except EndOfInput: pass args = parser.expect_many(values.W_Object) if not fun.iscallable(): raise SchemeException("call-with-continuation-prompt: not given callable function") if handler is not values.w_false and not handler.iscallable(): raise SchemeException("call-with-continuation-prompt: not given callable handler") if handler is values.w_false: handler = None cont = Prompt(tag, handler, env, cont) return fun.call(args, env, cont)
def make_logger(args): parser = ArgParser("make-logger", args) topic = values.w_false parent = values.w_false propagate_level = DEBUG # propagate everything try: topic = parser.expect(values.W_Symbol, values.w_false) parent = parser.expect(values.W_Logger, values.w_false) propagate_level = parser.expect(*LOG_LEVEL) except EndOfInput: pass # Any remaining arguments are propagate topics propagate_topic = parser.expect_many(values.W_Symbol, values.w_false) init_syslog_level = w_main_logger.get_syslog_level() init_stderr_level = w_main_logger.get_stderr_level() init_stdout_level = w_main_logger.get_stdout_level() return values.W_Logger(topic, parent, propagate_level, propagate_topic, init_syslog_level, init_stderr_level, init_stdout_level)