예제 #1
0
 public AbsBlockStmt(
     AbsSyntaxInfo inInfo,
     IEnumerable <AbsStmt> inStatements)
     : base(inInfo)
 {
     _stmts = inStatements.ToArray();
 }
예제 #2
0
 public AbsExpStmt(
     AbsSyntaxInfo info,
     AbsTerm value)
     : base(info)
 {
     _value = value;
 }
예제 #3
0
 public AbsReturnStmt(
     AbsSyntaxInfo inInfo,
     AbsTerm inExp)
     : base(inInfo)
 {
     _exp = inExp;
 }
예제 #4
0
 public AbsSourceRecord(
     AbsSyntaxInfo inInfo,
     IEnumerable <AbsGlobalDecl> inDecls)
     : base(inInfo)
 {
     _decls = inDecls.ToArray();
 }
예제 #5
0
 public AbsVarRef(
     AbsSyntaxInfo inInfo,
     Identifier inName)
     : base(inInfo)
 {
     _name = inName;
 }
예제 #6
0
 public AbsPositionalArg(
     AbsSyntaxInfo info,
     AbsTerm term)
     : base(info)
 {
     _term = term;
 }
예제 #7
0
 public AbsMemberDecl(
     AbsSyntaxInfo inInfo,
     Identifier inName)
     : base(inInfo)
 {
     _name = inName;
 }
예제 #8
0
 public AbsGenericParamDecl(
     AbsSyntaxInfo info,
     Identifier name)
     : base(info)
 {
     _name = name;
 }
예제 #9
0
 public AbsStructDecl(
     AbsSyntaxInfo info,
     Identifier name,
     IEnumerable <AbsMemberDecl> members)
     : base(info, name)
 {
     _members = members.ToArray();
 }
예제 #10
0
 public AbsAttribute(
     AbsSyntaxInfo info,
     Identifier name,
     IEnumerable <AbsArg> args)
     : base(info)
 {
     _name = name;
     _args = args.ToArray();
 }
예제 #11
0
 public AbsParamDecl(
     AbsSyntaxInfo inInfo,
     Identifier inName,
     AbsTerm inType)
     : base(inInfo)
 {
     _name = inName;
     _type = inType;
 }
예제 #12
0
 public AbsFreqQualTerm(
     AbsSyntaxInfo info,
     AbsTerm frequency,
     AbsTerm type)
     : base(info)
 {
     _freq = frequency;
     _type = type;
 }
예제 #13
0
 public AbsSwitchStmt(
     AbsSyntaxInfo info,
     AbsTerm value,
     IEnumerable <AbsCase> cases)
     : base(info)
 {
     _value = value;
     _cases = cases.ToArray();
 }
예제 #14
0
 public AbsCase(
     AbsSyntaxInfo info,
     AbsTerm value,
     AbsStmt body)
     : base(info)
 {
     _value = value;
     _body  = body;
 }
예제 #15
0
 public AbsMemberRef(
     AbsSyntaxInfo inInfo,
     AbsTerm inBaseObject,
     Identifier inMemberName)
     : base(inInfo)
 {
     _baseObject = inBaseObject;
     _memberName = inMemberName;
 }
예제 #16
0
 public AbsSeqStmt(
     AbsSyntaxInfo info,
     AbsStmt head,
     AbsStmt tail)
     : base(info)
 {
     _head = head;
     _tail = tail;
 }
예제 #17
0
 public AbsElementRef(
     AbsSyntaxInfo inInfo,
     AbsTerm inBaseObject,
     AbsTerm inIndex)
     : base(inInfo)
 {
     _baseObject = inBaseObject;
     _index      = inIndex;
 }
예제 #18
0
 public AbsGenericApp(
     AbsSyntaxInfo inInfo,
     AbsTerm inFunction,
     IEnumerable <AbsArg> inArguments)
     : base(inInfo)
 {
     _function  = inFunction;
     _arguments = inArguments.ToArray();
 }
예제 #19
0
 public AbsAssign(
     AbsSyntaxInfo info,
     AbsTerm left,
     AbsTerm right)
     : base(info)
 {
     _left  = left;
     _right = right;
 }
예제 #20
0
 public AbsApp(
     AbsSyntaxInfo inInfo,
     AbsTerm inFunction,
     IEnumerable<AbsArg> inArguments)
     : base(inInfo)
 {
     _function = inFunction;
     _arguments = inArguments.ToArray();
 }
예제 #21
0
 public AbsKeywordArg(
     AbsSyntaxInfo info,
     Identifier name,
     AbsTerm term)
     : base(info)
 {
     _name = name;
     _term = term;
 }
예제 #22
0
 public AbsSlotDecl(
     AbsSyntaxInfo inInfo,
     Identifier inName,
     AbsTerm inType,
     AbsTerm inInit)
     : base(inInfo, inName)
 {
     _type = inType;
     _init = inInit;
 }
예제 #23
0
 public AbsGenericValueParamDecl(
     AbsSyntaxInfo info,
     AbsTerm type,
     Identifier name,
     bool isImplicit)
     : base(info, name)
 {
     _type       = type;
     _isImplicit = isImplicit;
 }
예제 #24
0
 public AbsConceptDecl(
     AbsSyntaxInfo info,
     Identifier name,
     IEnumerable <AbsGenericParamDecl> genericParams,
     IEnumerable <AbsMemberDecl> members)
     : base(info, name)
 {
     _genericParams = genericParams == null ? null :
                      genericParams.ToArray();
     _members = members.ToArray();
 }
예제 #25
0
 public AbsIfStmt(
     AbsSyntaxInfo info,
     AbsTerm condition,
     AbsStmt thenStmt,
     AbsStmt elseStmt)
     : base(info)
 {
     _condition = condition;
     _thenStmt  = thenStmt;
     _elseStmt  = elseStmt;
 }
예제 #26
0
 public AbsForStmt(
     AbsSyntaxInfo info,
     Identifier name,
     AbsTerm sequence,
     AbsStmt body)
     : base(info)
 {
     _name     = name;
     _sequence = sequence;
     _body     = body;
 }
예제 #27
0
 public AbsPipelineDecl(
     AbsSyntaxInfo info,
     Identifier name,
     IEnumerable <AbsTerm> bases,
     IEnumerable <AbsMemberDecl> members)
     : base(info)
 {
     _name    = name;
     _bases   = bases.ToArray();
     _members = members.ToArray();
 }
예제 #28
0
 public AbsIfTerm(
     AbsSyntaxInfo info,
     AbsTerm condition,
     AbsTerm thenTerm,
     AbsTerm elseTerm)
     : base(info)
 {
     _condition = condition;
     _thenTerm  = thenTerm;
     _elseTerm  = elseTerm;
 }
예제 #29
0
 public AbsMethodDecl(
     AbsSyntaxInfo inInfo,
     Identifier inName,
     AbsTerm inResultType,
     IEnumerable <AbsParamDecl> inParams,
     AbsStmt inBody)
     : base(inInfo, inName)
 {
     _params     = inParams.ToArray();
     _resultType = inResultType;
     _body       = inBody;
 }
예제 #30
0
 public AbsLetStmt(
     AbsSyntaxInfo info,
     AbsLetFlavor flavor,
     AbsTerm type,
     Identifier name,
     AbsTerm value)
     : base(info)
 {
     _flavor = flavor;
     _type   = type;
     _name   = name;
     _value  = value;
 }
예제 #31
0
 public AbsVoid(
     AbsSyntaxInfo info)
     : base(info)
 {
 }
예제 #32
0
 public AbsGenericTypeParamDecl(
     AbsSyntaxInfo info,
     Identifier name)
     : base(info, name)
 {
 }
예제 #33
0
 public AbsAttribute(
     AbsSyntaxInfo info,
     Identifier name,
     IEnumerable<AbsArg> args)
     : base(info)
 {
     _name = name;
     _args = args.ToArray();
 }
예제 #34
0
 public AbsVarRef(
     AbsSyntaxInfo inInfo,
     Identifier inName)
     : base(inInfo)
 {
     _name = inName;
 }
예제 #35
0
 public AbsTerm(
     AbsSyntaxInfo inInfo)
     : base(inInfo)
 {
 }
예제 #36
0
 public AbsExpStmt(
     AbsSyntaxInfo info,
     AbsTerm value)
     : base(info)
 {
     _value = value;
 }
예제 #37
0
 public AbsLetStmt(
     AbsSyntaxInfo info,
     AbsLetFlavor flavor,
     AbsTerm type,
     Identifier name,
     AbsTerm value )
     : base(info)
 {
     _flavor = flavor;
     _type = type;
     _name = name;
     _value = value;
 }
예제 #38
0
 public AbsElementDecl(
     AbsSyntaxInfo info,
     Identifier name)
     : base(info, name)
 {
 }
예제 #39
0
 public AbsLit(
     AbsSyntaxInfo inInfo)
     : base(inInfo)
 {
 }
예제 #40
0
 public AbsGlobalDecl(
     AbsSyntaxInfo info)
     : base(info)
 {
 }
예제 #41
0
 public AbsCase(
     AbsSyntaxInfo info,
     AbsTerm value,
     AbsStmt body )
     : base(info)
 {
     _value = value;
     _body = body;
 }
예제 #42
0
 public AbsMemberDecl(
     AbsSyntaxInfo inInfo,
     Identifier inName)
     : base(inInfo)
 {
     _name = inName;
 }
예제 #43
0
 public AbsGenericParamDecl(
     AbsSyntaxInfo info,
     Identifier name)
     : base(info)
 {
     _name = name;
 }
예제 #44
0
 public AbsElementRef(
     AbsSyntaxInfo inInfo,
     AbsTerm inBaseObject,
     AbsTerm inIndex)
     : base(inInfo)
 {
     _baseObject = inBaseObject;
     _index = inIndex;
 }
예제 #45
0
 public AbsIfStmt(
     AbsSyntaxInfo info,
     AbsTerm condition,
     AbsStmt thenStmt,
     AbsStmt elseStmt)
     : base(info)
 {
     _condition = condition;
     _thenStmt = thenStmt;
     _elseStmt = elseStmt;
 }
예제 #46
0
 public AbsTypeSlotDecl(
     AbsSyntaxInfo info,
     Identifier name)
     : base(info, name)
 {
 }
예제 #47
0
 public AbsFreqQualTerm(
     AbsSyntaxInfo info,
     AbsTerm frequency,
     AbsTerm type)
     : base(info)
 {
     _freq = frequency;
     _type = type;
 }
예제 #48
0
 public AbsKeywordArg(
     AbsSyntaxInfo info,
     Identifier name,
     AbsTerm term)
     : base(info)
 {
     _name = name;
     _term = term;
 }
예제 #49
0
 public AbsForStmt(
     AbsSyntaxInfo info,
     Identifier name,
     AbsTerm sequence,
     AbsStmt body )
     : base(info)
 {
     _name = name;
     _sequence = sequence;
     _body = body;
 }
예제 #50
0
 public AbsMemberRef(
     AbsSyntaxInfo inInfo,
     AbsTerm inBaseObject,
     Identifier inMemberName)
     : base(inInfo)
 {
     _baseObject = inBaseObject;
     _memberName = inMemberName;
 }
예제 #51
0
 public AbsEmptyStmt(
     AbsSyntaxInfo info)
     : base(info)
 {
 }
예제 #52
0
 public AbsGenericValueParamDecl(
     AbsSyntaxInfo info,
     AbsTerm type,
     Identifier name,
     bool isImplicit)
     : base(info, name)
 {
     _type = type;
     _isImplicit = isImplicit;
 }
예제 #53
0
 public AbsBaseExp(
     AbsSyntaxInfo info)
     : base(info)
 {
 }
예제 #54
0
 public AbsAttribute(
     AbsSyntaxInfo info,
     Identifier name)
     : this(info, name, new AbsArg[] { })
 {
 }
예제 #55
0
 public AbsBlockStmt(
     AbsSyntaxInfo inInfo,
     IEnumerable<AbsStmt> inStatements)
     : base(inInfo)
 {
     _stmts = inStatements.ToArray();
 }
예제 #56
0
 public AbsIfTerm(
     AbsSyntaxInfo info,
     AbsTerm condition,
     AbsTerm thenTerm,
     AbsTerm elseTerm)
     : base(info)
 {
     _condition = condition;
     _thenTerm = thenTerm;
     _elseTerm = elseTerm;
 }
예제 #57
0
 public AbsMethodDecl(
     AbsSyntaxInfo inInfo,
     Identifier inName,
     AbsTerm inResultType,
     IEnumerable<AbsParamDecl> inParams,
     AbsStmt inBody)
     : base(inInfo, inName)
 {
     _params = inParams.ToArray();
     _resultType = inResultType;
     _body = inBody;
 }
예제 #58
0
 public AbsConceptDecl(
     AbsSyntaxInfo info,
     Identifier name,
     IEnumerable<AbsGenericParamDecl> genericParams,
     IEnumerable<AbsMemberDecl> members )
     : base(info, name)
 {
     _genericParams = genericParams == null ? null :
         genericParams.ToArray();
     _members = members.ToArray();
 }
예제 #59
0
 public AbsBaseExp(
     AbsSyntaxInfo info)
     : base(info)
 {
 }
예제 #60
0
 public AbsSyntax(
     AbsSyntaxInfo inInfo)
 {
     _info = inInfo;
 }