View source code
							
							
						
								Display the source code in dmd/expressionsem.d from which this
								page was generated on github.
							
						
							Report a bug
							
						
								If you spot a problem with this page, click here to create a
								Bugzilla issue.
							
						
							
								Improve this page
							
							
					
								Quickly fork, edit online, and submit a pull request for this page.
								Requires a signed-in GitHub account. This works well for small changes.
								If you'd like to make larger changes you may want to consider using
								local clone.
							
						Module dmd.expressionsem
Semantic analysis of expressions.
Specification
($LINK2 https://dlang.org/spec/expression.html, Expressions)
Documentation
https://dlang.org/phobos/dmd_expressionsem.html
Coverage
https://codecov.io/gh/dlang/dmd/src/master/src/dmd/expressionsem.d
Functions
| Name | Description | 
|---|---|
| 
									arrayExpressionSemantic(exps, sc, preserveErrors)
								 | Perform semantic() on an array of Expressions. | 
| 
									binSemantic(e, sc)
								 | Helper function for easy error propagation. If error occurs, returns ErrorExp. Otherwise returns NULL. | 
| 
									checkAddressVar(sc, exp, v)
								 | Determine if exp, which gets its address taken, can do so safely. | 
| 
									checkSharedAccess(e, sc, returnRef)
								 | If expression is shared, check that we can access it. Give error message if not. | 
| 
									expressionsToString(buf, sc, exps)
								 | Perform semantic analysis and CTFE on expressions to produce a string. | 
| 
									getThisSkipNestedFuncs(loc, sc, s, ad, e1, t, var, flag)
								 | Helper function for getRightThis().
 Getsthisof the next outer aggregate. | 
| 
									getVarExp(em, loc, sc)
								 | Returns emas a VariableExp | 
| 
									makeThis2Argument(loc, sc, fd)
								 | Make a dual-context container for use as a thisargument. | 
| 
									resolveIsPackage(sym)
								 | Determines whether a symbol represents a module or package (Used as a helper for is(type == module) and is(type == package)) | 
| 
									resolveOpDollar(sc, ae, pe0)
								 | Runs semantic on ae.arguments. Declares temporary variables if '$' was used. | 
| 
									resolveOpDollar(sc, ae, ie, pe0)
								 | Runs semantic on se.lwr and se.upr. Declares a temporary variable if '$' was used. | 
| 
									resolvePropertiesOnly(sc, e1)
								 | If e1 is a property function (template), resolve it. | 
| 
									semanticString(sc, exp, s)
								 | Resolve expas a compile-time known string. | 
| 
									semanticY(exp, sc, flag)
								 | Resolve properties, i.e. e1, without seeing UFCS. | 
| 
									symbolToExp(s, loc, sc, hasOverloads)
								 | Turn symbol sinto the expression it represents. | 
| 
									toBoolean(exp, sc)
								 | Try to treat expas a boolean, | 
| 
									trySemantic(exp, sc)
								 | Try to run semantic routines. If they fail, return NULL. | 
| 
									unaSemantic(e, sc)
								 | Helper function for easy error propagation. If error occurs, returns ErrorExp. Otherwise returns NULL. | 
| 
									verifyHookExist(loc, sc, id, description, module_)
								 | Make sure that the runtime hook idexists. | 
Authors
License
					Copyright © 1999-2022 by the D Language Foundation | Page generated by ddox.