Trait lifetime issues.
This commit is contained in:
		
							parent
							
								
									bc4c09c546
								
							
						
					
					
						commit
						63614841e8
					
				
							
								
								
									
										38
									
								
								src/parser/affiliated_keyword.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								src/parser/affiliated_keyword.rs
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,38 @@ | ||||
| use crate::types::Keyword; | ||||
| use crate::types::Object; | ||||
| use crate::types::PlainList; | ||||
| 
 | ||||
| pub struct AffiliatedKeyword<'s> { | ||||
|     name: &'s str, | ||||
| } | ||||
| 
 | ||||
| pub enum AffiliatedKeywordValue<'s> { | ||||
|     SingleString(&'s str), | ||||
|     ListOfStrings(Vec<&'s str>), | ||||
|     ListOfObjects(Vec<Object<'s>>), | ||||
| } | ||||
| 
 | ||||
| pub trait GetAffiliatedKeywords<'s> { | ||||
|     type ItemIterator: Iterator<Item = &'s Keyword<'s>>; | ||||
| 
 | ||||
|     fn get_affiliated_keywords<'r: 's>(&'r self) -> Self::ItemIterator; | ||||
| } | ||||
| 
 | ||||
| pub trait HandleAffiliatedKeywords<'s> { | ||||
|     fn get_stuff(&self) -> &'s str; | ||||
| } | ||||
| 
 | ||||
| impl<'s> GetAffiliatedKeywords<'s> for PlainList<'s> { | ||||
|     type ItemIterator = std::slice::Iter<'s, Keyword<'s>>; | ||||
| 
 | ||||
|     fn get_affiliated_keywords<'r: 's>(&'r self) -> Self::ItemIterator { | ||||
|         self.affiliated_keywords.iter() | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| impl<'s, I: GetAffiliatedKeywords<'s>> HandleAffiliatedKeywords<'s> for I { | ||||
|     fn get_stuff(&self) -> &'s str { | ||||
|         self.get_affiliated_keywords().count(); | ||||
|         todo!() | ||||
|     } | ||||
| } | ||||
| @ -1,3 +1,4 @@ | ||||
| mod affiliated_keyword; | ||||
| mod angle_link; | ||||
| mod babel_call; | ||||
| mod citation; | ||||
|  | ||||
| @ -219,13 +219,3 @@ impl<'s> TableRow<'s> { | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| pub trait GetAffiliatedKeywords<'s> { | ||||
|     fn get_affiliated_keywords(&self) -> () { | ||||
|         // foo
 | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| // impl<'s> GetAffiliatedKeywords for PlainList<'s> {
 | ||||
| 
 | ||||
| // }
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Tom Alexander
						Tom Alexander