;ELC   
;;; Compiled
;;; in Emacs version 24.5.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(custom-declare-group 'simp nil "Simp project helper." :group 'convenience)
(defvar simp-projects nil)
(defvar simp-buffer-project nil)
(byte-code "\300\301!\210\302\303\304\305\306\307%\207" [make-variable-buffer-local simp-buffer-project custom-declare-variable simp-completing-read-command 'completing-read "The completing read command simp-completing-read will use." :group simp] 6)
#@217 Internal simp use, completing read used by simp.
Uses custom variable simp-completing-read-command. PROMPT
will be used as the text shown on the minibuffer completion,
COLLECTION is the list of possible completions.
(defalias 'simp-completing-read #[(prompt collection) "	\n\"\207" [simp-completing-read-command prompt collection] 3 (#$ . 798)])
#@167 Returns the project the current buffer
is associated with.  If the buffer local variable
is set, simply return it, otherwise determine the
correct project and set it
(defalias 'simp-project-for-current-buffer #[nil "\203 \303\304\"	\305\306\307#)\266\203\204 \305\204! \310\311\215\210\203' \207\312\313!\207" [simp-buffer-project default-directory inhibit-changing-match-data plist-get :root nil t string-match --cl-block-nil-- (byte-code "\306\211\203/ \n@\307	\310\"\311!\211\203' \312	\313\314\f!#\210\315\316	\211\"\210*\nA\211\204 *\306\207" [simp-projects project --dolist-tail-- paths found-project simp-buffer-project nil plist-get :has simp-project-has-paths plist-put :root directory-file-name throw --cl-block-nil--] 6) error "simp did not find a project to work with :("] 7 (#$ . 1152)])
#@64 Returns a list of any files matching the given GLOB are in DIR
(defalias 'simp-glob-in-dir #[(glob dir) "\302\303\304!	\"!\207" [glob dir file-expand-wildcards expand-file-name symbol-name] 4 (#$ . 1981)])
#@82 Used to match a path to a project.  PATHS are tested
to see if they exist in DIR
(defalias 'simp-project-has-paths #[(paths &optional dir) "\206 	\303\304\305\n\"\235\203  \306\230?\205! \307\n\310\311\"\"\202! )\207" [dir default-directory paths nil mapcar #[(path) "\302	\"\207" [path dir simp-glob-in-dir] 3] "/" simp-project-has-paths expand-file-name ".."] 5 (#$ . 2194)])
#@46 get MEMBER property from the current project
(defalias 'simp-project-get #[(member) "\301 \205\n \302\301 \"\207" [member simp-project-for-current-buffer plist-get] 3 (#$ . 2585)])
#@38 get the current buffers project root
(defalias 'simp-project-root #[nil "\300\301!\207" [simp-project-get :root] 2 (#$ . 2773)])
#@47 get the current buffers project ignored paths
(defalias 'simp-project-ignored #[nil "\300\301!\207" [simp-project-get :ignore] 2 (#$ . 2908)])
#@37 get the current buffer project type
(defalias 'simp-project-type #[nil "\300\301!\207" [simp-project-get :type] 2 (#$ . 3057)])
#@150 define a simp project. PROJECT should be a plist, which can contain any
number of key value pairs that you wish to reference using simp-project-get.
(defalias 'simp-project-define #[(project) "	B\211\207" [project simp-projects] 2 (#$ . 3192)])
(provide 'simp-project)
