Sfoglia il codice sorgente

Add shell_expand.c

git-svn-id: https://klish.googlecode.com/svn/trunk@277 0eaa4687-2ee9-07dd-09d9-bcdd2d2dd5fb
Serj Kalichev 13 anni fa
parent
commit
9e1cfbb1b5
2 ha cambiato i file con 46 aggiunte e 3 eliminazioni
  1. 16 3
      Makefile.in
  2. 30 0
      clish/shell/shell_expand.c

+ 16 - 3
Makefile.in

@@ -237,6 +237,7 @@ am_libclish_la_OBJECTS = clish/libclish_la-clish_access_callback.lo \
 	clish/shell/libclish_la-shell_pwd.lo \
 	clish/shell/libclish_la-shell_tinyrl.lo \
 	clish/shell/shell_tinyxml_read.lo \
+	clish/shell/libclish_la-shell_expand.lo \
 	clish/variable/libclish_la-variable_expand.lo \
 	clish/view/libclish_la-view.lo \
 	clish/view/libclish_la-view_dump.lo \
@@ -796,9 +797,9 @@ libclish_la_SOURCES = clish/clish_access_callback.c \
 	clish/shell/shell_set_context.c clish/shell/shell_spawn.c \
 	clish/shell/shell_startup.c clish/shell/shell_pwd.c \
 	clish/shell/shell_tinyrl.c clish/shell/shell_tinyxml_read.cpp \
-	clish/shell/private.h clish/variable/variable_expand.c \
-	clish/variable/private.h clish/view/view.c \
-	clish/view/view_dump.c clish/view/private.h \
+	clish/shell/shell_expand.c clish/shell/private.h \
+	clish/variable/variable_expand.c clish/variable/private.h \
+	clish/view/view.c clish/view/view_dump.c clish/view/private.h \
 	clish/nspace/nspace.c clish/nspace/nspace_dump.c \
 	clish/nspace/private.h
 libclish_la_CFLAGS = @LUB_CFLAGS@ @LUBHEAP_CFLAGS@ $(DEBUG_CFLAGS)
@@ -1151,6 +1152,8 @@ clish/shell/libclish_la-shell_tinyrl.lo: clish/shell/$(am__dirstamp) \
 	clish/shell/$(DEPDIR)/$(am__dirstamp)
 clish/shell/shell_tinyxml_read.lo: clish/shell/$(am__dirstamp) \
 	clish/shell/$(DEPDIR)/$(am__dirstamp)
+clish/shell/libclish_la-shell_expand.lo: clish/shell/$(am__dirstamp) \
+	clish/shell/$(DEPDIR)/$(am__dirstamp)
 clish/variable/$(am__dirstamp):
 	@$(MKDIR_P) clish/variable
 	@: > clish/variable/$(am__dirstamp)
@@ -1753,6 +1756,8 @@ mostlyclean-compile:
 	-rm -f clish/shell/libclish_la-shell_dump.lo
 	-rm -f clish/shell/libclish_la-shell_execute.$(OBJEXT)
 	-rm -f clish/shell/libclish_la-shell_execute.lo
+	-rm -f clish/shell/libclish_la-shell_expand.$(OBJEXT)
+	-rm -f clish/shell/libclish_la-shell_expand.lo
 	-rm -f clish/shell/libclish_la-shell_find_create_ptype.$(OBJEXT)
 	-rm -f clish/shell/libclish_la-shell_find_create_ptype.lo
 	-rm -f clish/shell/libclish_la-shell_find_create_view.$(OBJEXT)
@@ -2090,6 +2095,7 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@clish/shell/$(DEPDIR)/libclish_la-shell_delete.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@clish/shell/$(DEPDIR)/libclish_la-shell_dump.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@clish/shell/$(DEPDIR)/libclish_la-shell_execute.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@clish/shell/$(DEPDIR)/libclish_la-shell_expand.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@clish/shell/$(DEPDIR)/libclish_la-shell_find_create_ptype.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@clish/shell/$(DEPDIR)/libclish_la-shell_find_create_view.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@clish/shell/$(DEPDIR)/libclish_la-shell_find_view.Plo@am__quote@
@@ -2563,6 +2569,13 @@ clish/shell/libclish_la-shell_tinyrl.lo: clish/shell/shell_tinyrl.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libclish_la_CFLAGS) $(CFLAGS) -c -o clish/shell/libclish_la-shell_tinyrl.lo `test -f 'clish/shell/shell_tinyrl.c' || echo '$(srcdir)/'`clish/shell/shell_tinyrl.c
 
+clish/shell/libclish_la-shell_expand.lo: clish/shell/shell_expand.c
+@am__fastdepCC_TRUE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libclish_la_CFLAGS) $(CFLAGS) -MT clish/shell/libclish_la-shell_expand.lo -MD -MP -MF clish/shell/$(DEPDIR)/libclish_la-shell_expand.Tpo -c -o clish/shell/libclish_la-shell_expand.lo `test -f 'clish/shell/shell_expand.c' || echo '$(srcdir)/'`clish/shell/shell_expand.c
+@am__fastdepCC_TRUE@	$(am__mv) clish/shell/$(DEPDIR)/libclish_la-shell_expand.Tpo clish/shell/$(DEPDIR)/libclish_la-shell_expand.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='clish/shell/shell_expand.c' object='clish/shell/libclish_la-shell_expand.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libclish_la_CFLAGS) $(CFLAGS) -c -o clish/shell/libclish_la-shell_expand.lo `test -f 'clish/shell/shell_expand.c' || echo '$(srcdir)/'`clish/shell/shell_expand.c
+
 clish/variable/libclish_la-variable_expand.lo: clish/variable/variable_expand.c
 @am__fastdepCC_TRUE@	$(LIBTOOL)  --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libclish_la_CFLAGS) $(CFLAGS) -MT clish/variable/libclish_la-variable_expand.lo -MD -MP -MF clish/variable/$(DEPDIR)/libclish_la-variable_expand.Tpo -c -o clish/variable/libclish_la-variable_expand.lo `test -f 'clish/variable/variable_expand.c' || echo '$(srcdir)/'`clish/variable/variable_expand.c
 @am__fastdepCC_TRUE@	$(am__mv) clish/variable/$(DEPDIR)/libclish_la-variable_expand.Tpo clish/variable/$(DEPDIR)/libclish_la-variable_expand.Plo

+ 30 - 0
clish/shell/shell_expand.c

@@ -0,0 +1,30 @@
+/*
+ * shell_expand.c
+ */
+#include <stdlib.h>
+#include <assert.h>
+
+#include "lub/string.h"
+#include "private.h"
+
+/*----------------------------------------------------------- */
+char * clish_shell__expand_text(const clish_shell_t *this,
+	clish_command_t *cmd, clish_pargv_t *pargv, const char *text)
+{
+	assert(this);
+	if (!text)
+		return NULL;
+	return clish_variable_expand(text, this->viewid, cmd, pargv);
+}
+
+/*----------------------------------------------------------- */
+char * clish_shell__expand_variable(const clish_shell_t *this,
+	clish_command_t *cmd, clish_pargv_t *pargv, const char *var)
+{
+	assert(this);
+	if (!var)
+		return NULL;
+	return clish_variable__get_value(var, this->viewid, cmd, pargv);
+}
+
+/*----------------------------------------------------------- */