HomeForumSourceResearchGuide
Sign in to contribute to source. how it works
Type definition file util.compiler.AssignGraphBuilder by barry
expand copy to clipboardexpand
uses SyntaxParser
uses data.String
uses OpParser

data AssignField {
	AssignInstance instances[]
}

data AssignInstance {
	DanaType type
	const byte SC_NEUTRAL = 0
	const byte SC_LOCAL = 1
	const byte SC_LOCAL_AUTO = 2
	const byte SC_STORE = 3
	byte storeClass
	AssignField fields[]
}

data AssignVar {
	int varIndex
	DanaType type
	AssignInstance instances[]
	const byte VC_LOCAL = 1
	const byte VC_GLOBAL = 2
	byte varClass
}

data AssignGraph {
	AssignVar vars[]
}

//this pass derives typing, literals, and control-flow, plus scoping and variables, "store" status, and giving an execution-order instruction list
interface AssignGraphBuilder {

	AssignGraph buildAssignmentGraph(OpFunction function, DanaType types[])

	AssignInstance[] getInstances(AssignGraph agr, OpToken op, DanaType types[])
	
	}
Revision history
To propose a new revision to this entity, use dana source put -ut your/new/version.dn -n util.compiler.AssignGraphBuilder -m "reason for update" -u yourUsername
Version 1 (this version) by barry
Notes for this version: New compiler components