* dirOf: return a path if the argument is a path.
This commit is contained in:
		
							parent
							
								
									cf705eaf78
								
							
						
					
					
						commit
						cba913c521
					
				
					 1 changed files with 6 additions and 2 deletions
				
			
		|  | @ -316,11 +316,15 @@ static Expr primBaseNameOf(EvalState & state, const ATermVector & args) | |||
| 
 | ||||
| 
 | ||||
| /* Return the directory of the given path, i.e., everything before the
 | ||||
|    last slash. */ | ||||
|    last slash.  Return either a path or a string depending on the type | ||||
|    of the argument. */ | ||||
| static Expr primDirOf(EvalState & state, const ATermVector & args) | ||||
| { | ||||
|     PathSet context; | ||||
|     return makeStr(dirOf(coerceToPath(state, args[0], context)), context); | ||||
|     Expr e = evalExpr(state, args[0]); ATerm dummy; | ||||
|     bool isPath = matchPath(e, dummy); | ||||
|     Path dir = dirOf(coerceToPath(state, e, context)); | ||||
|     return isPath ? makePath(toATerm(dir)) : makeStr(dir, context); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue