Function: treemacs--create-branch--inliner

treemacs--create-branch--inliner is a function defined in treemacs-rendering.el.

Signature

(treemacs--create-branch--inliner INLINE--FORM ROOT DEPTH GIT-FUTURE FLATTEN-FUTURE &optional PARENT)

Source Code

;; Defined in ~/.emacs.d/elpa/treemacs-20251226.1307/treemacs-rendering.el
;; Could not find source code, showing raw function object.
#[(inline--form root depth git-future flatten-future &optional parent)
  ((ignore inline--form)
   (catch 'inline--just-use
     (let*
	 ((exp root)
	  (root
	   (if (macroexp-copyable-p exp) exp (make-symbol "root")))
	  (body
	   (let*
	       ((exp depth)
		(depth
		 (if (macroexp-copyable-p exp) exp
		   (make-symbol "depth")))
		(body
		 (let*
		     ((exp git-future)
		      (git-future
		       (if (macroexp-copyable-p exp) exp
			 (make-symbol "git-future")))
		      (body
		       (let*
			   ((exp flatten-future)
			    (flatten-future
			     (if (macroexp-copyable-p exp) exp
			       (make-symbol "flatten-future")))
			    (body
			     (let*
				 ((exp parent)
				  (parent
				   (if (macroexp-copyable-p exp) exp
				     (make-symbol "parent")))
				  (body
				   (list 'save-excursion
					 (list 'let*
					       (list
						(list 'dirs-and-files
						      (list
						       'treemacs--get-dir-content
						       root))
						(list 'dirs
						      (list 'car
							    'dirs-and-files))
						(list 'files
						      (list 'cadr
							    'dirs-and-files))
						(list 'parent-node
						      (list
						       'treemacs-find-in-dom
						       root))
						(list 'dir-dom-nodes)
						(list 'file-dom-nodes)
						(list 'git-info)
						(list 'file-strings)
						(list 'dir-strings))
					       (list 'setq
						     'dir-strings
						     (list
						      'treemacs--create-buttons
						      :nodes 'dirs
						      :depth depth
						      :node-name 'node
						      :node-action
						      (list
						       'treemacs--create-dir-button-strings
						       'node 'prefix
						       parent depth)))
					       (list 'setq
						     'file-strings
						     (list
						      'treemacs--create-buttons
						      :nodes 'files
						      :depth depth
						      :node-name 'node
						      :node-action
						      (list
						       'treemacs--create-file-button-strings
						       'node 'prefix
						       parent depth)))
					       (list 'end-of-line)
					       (list 'pcase
						     'treemacs--git-mode
						     (list
						      (list 'or
							    (list
							     'quote
							     'simple)
							    (list
							     'quote
							     'extended))
						      (list 'setf
							    'git-info
							    (list
							     'treemacs--get-or-parse-git-result
							     git-future))
						      (list 'ht-set!
							    'treemacs--git-cache
							    root
							    'git-info))
						     (list
						      (list 'quote
							    'deferred)
						      (list 'setf
							    'git-info
							    (list 'or
								  (list
								   'ht-get
								   'treemacs--git-cache
								   root)
								  'treemacs--empty-table)))
						     (list '_
							   (list 'setf
								 'git-info
								 'treemacs--empty-table)))
					       (list 'run-with-timer
						     0.5 nil
						     (list 'function
							   'treemacs--apply-annotations-deferred)
						     parent root
						     (list
						      'current-buffer)
						     git-future)
					       (list 'if
						     'treemacs-pre-file-insert-predicates
						     (list 'progn
							   (list '-let
								 [result
								  nil]
								 (list
								  'while
								  'file-strings
								  (list
								   'let*
								   (list
								    (list
								     'prefix
								     (list
								      'car
								      'file-strings))
								    (list
								     'icon
								     (list
								      'cadr
								      'file-strings))
								    (list
								     'filename
								     (list
								      'caddr
								      'file-strings))
								    (list
								     'filepath
								     (list
								      'concat
								      root
								      "/"
								      'filename)))
								   (list
								    'unless
								    (list
								     '--any?
								     (list
								      'funcall
								      'it
								      'filepath
								      'git-info)
								     'treemacs-pre-file-insert-predicates)
								    (list
								     'setq
								     'result
								     (list
								      'cons
								      'filename
								      (list
								       'cons
								       'icon
								       (list
									'cons
									'prefix
									'result))))
								    (list
								     'push
								     (list
								      'treemacs-dom-node->create!
								      :parent
								      'parent-node
								      :key
								      'filepath)
								     'file-dom-nodes)))
								  (list
								   'setq
								   'file-strings
								   (list
								    'cdddr
								    'file-strings)))
								 (list
								  'setq
								  'file-strings
								  (list
								   'nreverse
								   'result)))
							   (list '-let
								 [result
								  nil]
								 (list
								  'while
								  'dir-strings
								  (list
								   'let*
								   (list
								    (list
								     'prefix
								     (list
								      'car
								      'dir-strings))
								    (list
								     'icon
								     (list
								      'cadr
								      'dir-strings))
								    (list
								     'dirname
								     (list
								      'caddr
								      'dir-strings))
								    (list
								     'dirpath
								     (list
								      'concat
								      root
								      "/"
								      'dirname)))
								   (list
								    'unless
								    (list
								     '--any?
								     (list
								      'funcall
								      'it
								      'dirpath
								      'git-info)
								     'treemacs-pre-file-insert-predicates)
								    (list
								     'setq
								     'result
								     (list
								      'cons
								      'dirname
								      (list
								       'cons
								       'icon
								       (list
									'cons
									'prefix
									'result))))
								    (list
								     'push
								     (list
								      'treemacs-dom-node->create!
								      :parent
								      'parent-node
								      :key
								      'dirpath)
								     'dir-dom-nodes)))
								  (list
								   'setq
								   'dir-strings
								   (list
								    'cdddr
								    'dir-strings)))
								 (list
								  'setq
								  'dir-strings
								  (list
								   'nreverse
								   'result))))
						     (list 'setf
							   'file-dom-nodes
							   (list
							    '--map
							    (list
							     'treemacs-dom-node->create!
							     :parent
							     'parent-node
							     :key 'it)
							    'files)
							   'dir-dom-nodes
							   (list
							    '--map
							    (list
							     'treemacs-dom-node->create!
							     :parent
							     'parent-node
							     :key 'it)
							    'dirs)))
					       (list 'setf
						     (list
						      'treemacs-dom-node->children
						      'parent-node)
						     (list 'nconc
							   'dir-dom-nodes
							   'file-dom-nodes
							   (list
							    'treemacs-dom-node->children
							    'parent-node)))
					       (list 'dolist
						     (list 'it
							   (list
							    'treemacs-dom-node->children
							    'parent-node))
						     (list
						      'treemacs-dom-node->insert-into-dom!
						      'it))
					       (list 'setf
						     'dir-strings
						     (list
						      'treemacs--inplace-map-when-unrolled
						      'dir-strings 3
						      (list '-if-let*
							    (list
							     (list
							      'ann
							      (list
							       'treemacs-get-annotation
							       (list
								'concat
								root
								"/"
								'it)))
							     (list
							      'face
							      (list
							       'treemacs-annotation->face-value
							       'ann)))
							    (list
							     'progn
							     (list
							      'put-text-property
							      0
							      (list
							       'length
							       'it)
							      (list
							       'quote
							       'face)
							      'face
							      'it)
							     (list
							      'concat
							      'it
							      (list
							       'treemacs-annotation->suffix-value
							       'ann)))
							    (list
							     'put-text-property
							     0
							     (list
							      'length
							      'it)
							     (list
							      'quote
							      'face)
							     (list
							      'quote
							      'treemacs-directory-face)
							     'it)
							    'it)))
					       (list 'insert
						     (list 'apply
							   (list
							    'function
							    'concat)
							   'dir-strings))
					       (list 'end-of-line)
					       (list 'setf
						     'file-strings
						     (list
						      'treemacs--inplace-map-when-unrolled
						      'file-strings 3
						      (list '-if-let*
							    (list
							     (list
							      'ann
							      (list
							       'treemacs-get-annotation
							       (list
								'concat
								root
								"/"
								'it)))
							     (list
							      'face
							      (list
							       'treemacs-annotation->face-value
							       'ann)))
							    (list
							     'progn
							     (list
							      'put-text-property
							      0
							      (list
							       'length
							       'it)
							      (list
							       'quote
							       'face)
							      'face
							      'it)
							     (list
							      'concat
							      'it
							      (list
							       'treemacs-annotation->suffix-value
							       'ann)))
							    (list
							     'put-text-property
							     0
							     (list
							      'length
							      'it)
							     (list
							      'quote
							      'face)
							     (list
							      'quote
							      'treemacs-git-unmodified-face)
							     'it)
							    'it)))
					       (list 'insert
						     (list 'apply
							   (list
							    'function
							    'concat)
							   'file-strings))
					       (list 'save-excursion
						     (list
						      'treemacs--flatten-dirs
						      (list
						       'treemacs--parse-flattened-dirs
						       root
						       flatten-future))
						     (list
						      'treemacs--reentry
						      root git-future
						      flatten-future))
					       (list 'with-no-warnings
						     (list
						      'line-end-position))))))
			       (if (eq parent exp) body
				 (macroexp-let*
				  (list (list parent exp)) body)))))
			 (if (eq flatten-future exp) body
			   (macroexp-let*
			    (list (list flatten-future exp)) body)))))
		   (if (eq git-future exp) body
		     (macroexp-let* (list (list git-future exp)) body)))))
	     (if (eq depth exp) body
	       (macroexp-let* (list (list depth exp)) body)))))
       (if (eq root exp) body
	 (macroexp-let* (list (list root exp)) body)))))
  (t)]